iPhone/iPadアプリ開発逆引き大全500の極意

プログラミングの基礎 - Tips178 オブジェクトがnilの場合のメソッド動作

登録タグ
iOS
Icon comment count 0
Icon stock count 0

3-8クラスTips178 オブジェクトがnilの場合のメソッド動作

Level1

Pointnilの代入でメソッドは実行されない

Objective-Cでは、「nil」という特別な値があります。C言語のNULLポインタと似ていますが、「nil」の場合はメソッドを指定しても、実行エラーにはならないという良い点があります。

そのため、メソッド呼び出しの前に変数がnilであるか、ないかの違いを条件分岐する必要がありません。そのままメソッドを呼び出しても、そのメソッドが実行されないだけになります。

例えば、以下のように記述した場合、メソッドは実行されません。

型名 *変数名 = nil;
[変数名 メソッド];

リスト1では、定義されているCalcクラスのadd:メソッドを実行しています。calc変数がnilではない場合は、正常にadd:メソッドが実行されます。calc変数にnilを代入するとadd:メソッドは実行されません。

実行結果
リスト1 オブジェクト

出典情報

Medium

iPhone/iPadアプリ開発逆引き大全500の極意

  • 著者: 増田 智昭, 池谷 京子

コメント

    コメントはありません