[iPhone SDK] Objective-C 2.0 のプロパティ
Objective-Cのプロパティで時々はまるので、メモ。(詳解 Objective-C 2.0 P.295)
プロパティに代入をすると、オプションに応じて実際は内部ではこのようなことが行われている。
しかしこれはあくまで概念で、このままのコードがどこかに生成されているわけではないらしい。なので、この内部にブレークポイントを張ったりはできない。
@propertyのオプションが assign だった場合
-(void)setName:(TYPE)obj { name = obj; }
@propertyのオプションが retain だった場合
-(void)setName:(TYPE)obj { if(name != obj) { [name release]; name = [obj retain]; } }
@propertyのオプションが copy だった場合
-(void)setName:(TYPE)obj { if(name != obj) { [name release]; name = [obj copy]; } }
Objective-C では、nil にメッセージを送っても何も起きない(落ちたりしない)ので、name が nil だった場合 nil に release が送られてしまうが、問題がない。(詳解Objective-C 2.0 P.62)
詳解 Objective-C 2.0 | |
![]() |
荻原 剛志
ソフトバンククリエイティブ 2008-05-28 おすすめ平均 |
関連記事
-
-
“I think the stainless steel looks beautiful when it wears” from The Perfect Thing
傷が付きやすいと言われている iPhone 7 ジェットブラック。ケースを付けるか迷ったら、下記
-
-
Apple Special Event 2012
2012年は下記が発表された。 iPhone 5iPod touchiPod nano
-
-
Photoshop のバッチ処理でiOSアプリアイコンを一括作成する
毎回苦労しているiOSのアプリアイコン作成。今回はPhotoshopのバッチで作成してみる。前回は
-
-
[iOS8] BlocksKit で不具合発生
iOS8 にアップデートしたところ、BlocksKit の UIAlertView と UI
-
-
おんぷちゃん for iPad にオンライン授業サポート機能を追加
コロナウィルスの影響で、うちの子どもたちのピアノレッスンもオンライン授業になりまし
-
-
[iOS SDK] iPad 専用アプリをiPhoneでも使えるようにする
iPad 初代やiPad2の頃は、iPhoneとiPadの画面サイズがかなり異なり、また
-
-
Apple買収後の TestFlight を利用してみた
TestFlight は昔から利用していたが、2014年に Apple に買収 されてしまった。その
-
-
リズムくんにくまモン画像を利用させていただきました
熊本県さまから許諾をいただけたので、リズムくん バージョン1.6で、くまモン画像を表示
-
-
Apple Developer Program更新2019
今年も更新。税別 11800円だった。 2009年から継続しているようだ。もう11回
-
-
[iOS SDK] iPhone/iPad はサイレントモードにしても音が鳴る
この前、iOS5 を入れた iPad2 で おんぷちゃん for iPad から音が鳴らない、ほかの