タグ

2012年2月2日のブックマーク (2件)

  • Objective-Cのデリゲートの話 : As Sloth As Possible

    「Objective-Cで、参照先のオブジェクトから参照元に通知を送る方法。」を読んてで思ったんですが、若干冗長な気がする。 プロトコルを使う プロトコルを使うんだったら、最初からそのプロトコルに適合するオブジェクトしかdelegateになれないようにしちゃった方がいいと思う。こんな感じで。 @interface Foo : NSObject { id<SampleDelegate> delegate; } @property (assign) id<SampleDelegate> delegate; @end こうしちゃえば、そもそもSampleDelegateに適合しないオブジェクトはdelegateになれないので、conformsToProtocolのチェックは必要なくなる。UIKitでも(例えばUITableViewのdelegateとか)大体そうなってますね。あと、ObjCはレシ

    Objective-Cのデリゲートの話 : As Sloth As Possible
  • [iOS5] ARC : プロパティ属性と使い方 | Natsu note

    strong __strong修飾子に対応するプロパティ属性です。strong属性を用いたプロパティは参照先オブジェクトのオーナーとなります。 weak __weak修飾子に対応するプロパティ属性です。__weak修飾子を持った変数と同様、weak属性のプロパティも、参照先のオブジェクトが破棄されたら自動的にnilが代入されます。weak属性を用いたプロパティはオーナーシップ権を持ちません。 weak属性は、delegateやOutletの変数に最適です。 なお、iOS 4では__weak修飾子が使えないため、プロパティのweak属性も使えません。この場合は、後述のunsafe_unretainedを使いましょう。 copy __strong修飾子に対応しますが、実際にはコピーオブジェクトが代入されます。copy属性を用いたプロパティは参照先オブジェクトのオーナーとなります。 unsafe

    hk41
    hk41 2012/02/02