[iPhone SDK] Objective-C 2.0 のプロパティ

公開日: : 最終更新日:2010/08/08 iPad, iPhone ,

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
詳解 Objective-C 2.0 荻原 剛志

ソフトバンククリエイティブ 2008-05-28
売り上げランキング : 2361

おすすめ平均 star
star説明が下手だと思う。
stariPhoneアプリ開発で初めてObjective-C触る人に勧めたい
star常に手元にあるべき本

Amazonで詳しく見る by G-Tools

関連記事

PebbleKit iOS SDK dynamic framework 問題

最近 EverLearn の Pebble アプリがiOSアプリと接続できずエラーが表示されるので、

記事を読む

iPad, iPhone, Mac, PC で使える Line6 Mobile Keys

今年のCESで発表されて以来ずっと待っていたLine6のMobile Keysがついに発売される。こ

記事を読む

[iOS SDK] 実装ファイルでメンバ変数を宣言する

Xcode 4.x を導入したらいろいろ見慣れない記法があったので、いまさらながら一部まとめてみた。

記事を読む

Apple Special Event 2015

https://www.gizmodo.jp/2015/09/applelive_event_ip

記事を読む

no image

[iOS SDK] NSUserDefaults boolForKey でNOが返ってくるとNOが格納されていたのか値が存在しなかったのかが不明

NSUserDefaults Class Reference にあるとおり、NSUserDefau

記事を読む

これは楽しそう。ズボンでドラム演奏 DRUMPANTS

こんな楽しげなデバイスが2014年にKickstarterにでていたらしい。 新しい楽器?ドラムを

記事を読む

MacFan 2017年5月号でアプリ紹介されました

Mac Fan 2017年5月号 でおんぷちゃん for iPad を紹介していただきました。ありが

記事を読む

no image

iPhone Core Audio プログラミング (Extended Audio File Services)

発売日からずっと気になる存在だったが、Audio Queue Services を使ったプログラムを

記事を読む

no image

省メモリプログラミング

昔買った「省メモリプログラミング」を読み返してみたら、Objective-Cで採用している参照カウン

記事を読む

no image

[iPhone SDK] iPhone SDK 開発のレシピ

ずいぶん昔に買ったけれどもブログに書くのを忘れていた。 出版社(秀和システム)の紹介ページ

記事を読む

Message

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Ember Mug 2のACアダプタをUSB Type-Cに変えてみた

冬になると活躍する Ember Mug 2 の充電器は付属のACアダ

Wi-Fi6Eルータ TP-Link AXE5400購入

Wi-Fi6E を試してみたくなり、TP-Link AXE5

児童手当 認定請求書申請 2024 「請求者が養育をする18歳に達する日以降の最初の3月31日までの子の数」とは?

2024年に受給していない人には手紙が届くらしい。 電子申請も

Vision Proアプリ開発本 8/24、8/26に発売

Vision Proアプリ開発入門 P400が 8/24 に発売、V

Developer Strap が日本でも購入可能に

USアカウントでしか購入できなかった Vision Pro 用 De

→もっと見る

PAGE TOP ↑