0

単純なテスト アプリでは、起動してウィンドウを表示しますが、クラスの init には到達しません。Debugger Console には次の機能があります。Running… (gdb)

UntitledAppDelegate.mまたは .hには何もありません

NSObject クラスでは、「untitled」initが untitled.h で宣言され、untitled.m で宣言されています。

 @implementation untitled
   - (id)init {

    if (self = [super init])
    { 
       int i=1;
       i=i++;
       NSLog(@"%i here",i);
    }

    return self;
  }

 @end

UntitledAppDelegate.m のブレークポイントは、最後の } に到達したことを示しています。

Xcode は、3.2、OSX 10.6、およびガベージ コレクション用に設定されています。

エラーや警告はありません。それは実行されます。

init が実行されないのはなぜですか? どうすれば修正できますか?

4

3 に答える 3

2

そのクラスのインスタンスに対してinitを呼び出すことはありますか?コードのどこかにあるはずです:

untitled *myObj = [[untitled alloc] init];

そうでない場合、これが呼び出されない理由です。

于 2012-10-26T08:35:20.323 に答える
0

私のボーンヘッド エラーの結果を見て時間を無駄にしてしまったすべての人に謝罪します。
いくつかを組み合わせましたが、主に、それらの作成者が initWithFrame で NSView クラスを使用していることに気付きました。

NSObject クラスの単純な init が起動時に実行されない理由はまだわかりません。

- (id)init {  
if (self = [super init]) {  
NSLog(@"Foo");  
}  
return self;  
}
于 2012-10-28T17:21:17.003 に答える
0
untitled *object = [untitled new];
于 2013-03-15T10:37:52.650 に答える