-2

ClassName.m にインスタンス メソッドを記述します。

-(void)methodName:(paraType)parameter
{...}

そして、それを使用して呼び出します

[self methodName:parameter]; 
警告が表示されますが、コードは正常に実行されます。

これは、クラスのインスタンスを作成していないためですか? メソッドがまだ正常に実行されるのはなぜですか? そして、警告を防ぐために self メソッドを呼び出す正しい方法は何ですか?

4

4 に答える 4

1

警告が表示される場合は、メソッド シグネチャがインターフェイスにないことが原因である可能性があります。

@interface foo ....

-(void)method;

実装が記述されると、コンパイラがメソッドを確認するのは初めてではないため、警告は消えるはずです。これをしなくても動作しますが、警告メッセージが煩わしいです。

于 2011-03-29T05:03:58.090 に答える