[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

関連記事

アプリアップデート数はApp Store Connectアプリで確認できる

自作アプリのアップデート数をSafari のApp Store Connectで確認しよう

記事を読む

新アプリ「コードちゃん」を公開しました

速報:新 iPad 発表。Apple Pencil対応で3万7800円から - Engadget

記事を読む

[WatchKit] How to update complications

Apple Watch の文字盤上に、自分のアプリの情報を載せることができる仕組みが、Complic

記事を読む

no image

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

NSUserDefaults Class Reference にあるとおり、NSUserDefau

記事を読む

iPad Air 2 OpenAL再生でプチノイズ発生(更新あり)

新アプリが動き始めたので、TestFlightを利用してベータテストを行っている。自分のiPad2や

記事を読む

ParentalGate修正

いくつか数年前に作ってアップデートしていなかったアプリたちに関して、更新しないとApp Storeか

記事を読む

no image

[iOS SDK] SSPieProgressView を使ってみた

iOS オープンソースライブラリ徹底活用 菊田剛著 秀和システム | DevCafeJp で紹介さ

記事を読む

Guideline 2.5.10 – Performance – Software Requirements で Reject

2019年3月27日以降、iPhone Xs Maxの画面サイズ6.5インチのスクリーンショットが

記事を読む

no image

[iPhone SDK] View Based Application で NIB(XIB)ファイルを削除してみる

iPhoneアプリ開発に慣れてくると、段々Interface Builderを使わなくなってくる。

記事を読む

no image

メイドインジャパンとiPad、どこが違う? 世界で勝てるデジタル家電 感想

西田宗千佳氏の本はいつも面白い。 今回も予想に違わず面白かった。 自分も同じような情報は知っているは

記事を読む

Message

メールアドレスが公開されることはありません。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

Transcend TS-HUB5C を買ってみた

前回 USB Type-C ハブを買って返品してしまったので、再度検

TUNEWEAR ALMIGHTY DOCK nano1 USB3.2 5in1ハブ を買ってみた

ちょうどiPhone のリストアを実行中で、2時間程度かかっていたた

Apple Developer Program 更新 2022

今年も Apple Developer Programを更新した。こ

M1 MacBook Air を macOS Monterey にアップデート

Xcode 13.3 アップデート するために、macOS

Xcode 13.3 アップデート

iPhone 11 Pro Max の iOSを15.4に上げてしま

→もっと見る

PAGE TOP ↑