10

ARCモードのCoreDataでエンティティのモデルオブジェクトを作成すると、代わりに、または強力な保持が生成されます。では、作業を保持し、ARCモードでもコンパイルしますか?ARCモードでは、release、autorelease、retainキーワードを使用できないと思いましたか?

4

2 に答える 2

4

@propertyこのような宣言を生成するということですか?

@property (nonatomic, retain) MyObject *object;

retainプロパティ属性はstrong、ARCの下を意味します。

4.1.1。プロパティ宣言

于 2012-06-16T02:04:32.083 に答える
4

この回答を確認してください:https ://stackoverflow.com/a/10036821/662605

その要点は、プロパティの場合、内部で生成されるコードはタイプ(、、 )に@synthesize依存するということです。retainretainassigncopy

生成された管理対象オブジェクトのサブクラスは使用し@dynamicません@synthesize。これらすべてが魔法のように発生します。したがって、実際には、混乱を招きますが、retainキーワードが使用されていないように見えるため、ARCは文句を言いません...それ。

使用するために実装を交換しようとしましたが@synthesize、それでもエラーは発生しませんでしたが、リンクにその答えがあれば、何かに取り組むことができると思います

他の洞察があればいいのですが。

于 2012-07-23T16:56:28.623 に答える