object-c - OC 初期化メソッドまたは dealloc ではプロパティを使用しないほうがよいのですが、なぜですか?
習慣沉默
習慣沉默 2017-05-02 09:29:36
0
3
726

この説明を何度か見たことがあります。self が実際に必要なインスタンスを呼び出しているかどうかがわからないため、初期化メソッドまたは dealloc では属性を使用しないのが最善です。これはなぜでしょうか。

習慣沉默
習慣沉默

全員に返信(3)
漂亮男人

どこで見ましたか?それらはすべて過去のもので、ARC には制限はなく、好きなように使用できます。

昔の手動メモリ管理では、プロパティの呼び出しには参照カウンターの追加と減算が含まれ、self = [super ...] 初始化的对象不一定是当前类的对象,可能是“变体”或私有类(objc里的class有 classmetaclass 的区别),所以在你不知道属性 setter 方法里到底是怎么加减引用计数器的情况下,你就只针对 ivar単に保持して解放するだけでした。

リーリー

retain(copy,new)とreleaseはペアで表示されます

いいねを押す +0
给我你的怀抱

デリゲートなどの循環参照が生成され、その後決して解放されないためです

いいねを押す +0
漂亮男人

注意が必要なカテゴリ (Category)、セッター、ゲッター、KVO などがあるためです
最も重要なことは、分類のため、文法は分類の属性とメソッドを呼び出すことができますが、_ は呼び出すことができません。仕事、注意が必要です

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート