0

複数のクラスのヘルパーメソッドを介してアクセスしたいシングルトンクラスがあります...

私のクラスの1つはCCLayerから継承しています。

@interface Game : CCLayer

他のNSObject:

@interface Question : NSObject

...それで、私の考えはクラスを作成することでした:

#import "Storeizer.h"

@implementation Storeizer

-(StorageMechanism*)store {
    return [StorageMechanism sharedStorageMechanism];
}

@end

また、GameクラスとQuestionクラスの両方をStoreizerから継承して、self.storeコンビニエンスメソッドを自動的に持つことができるようにします。ただし、他のクラスはすでに別のオブジェクト(CCLayerとNSObject)から継承しているため、これは問題です。それで、私はどのように進めるかについて少し混乱していて、この便利な方法がそれが価値があるよりもっと厄介であるかどうか疑問に思います。私は冗長なコードが嫌いな世界から来たばかりで、[StorageMechanism sharedStorageMechanism]を呼び出す複数のクラスがあると、(少なくとも私にとっては)少し不親切に感じます。

では、どうすればこの問題を解決できますか?

4

1 に答える 1

1

NSObjectにカテゴリを追加し、これらのメソッドを使用しているカテゴリのヘッダーをインポートします。

于 2012-08-15T18:57:26.603 に答える