2010-11-26 15 views

答えて

13

あなたのクラスの+initializeメソッドを使用します(。コメントで提案されているように、if (self == [MyClass class])条件を追加する更新)

@implementation MyClass 

static NSUInteger counter; 

+(void)initialize { 
    if (self == [MyClass class]) { 
     counter = 0; 
    } 
} 

@end 

+2

をプラスあなたは 'initialize'が二度実行されないことを確認するかもしれませんクラスがサブクラス化されている場合 – zoul

+1

静的NSUIntegerカウンタ= 0;の何が問題なのですか?標準のCイニシャライザが動作するときに 'initialize'メソッドの必要はありません。 – JeremyP

+0

zoul - 良い点!編集します。 –

関連する問題