2

ABRecordRef を作成し、そのプロパティを設定して参照を返すメソッドがあります。

iOS 7 未満をサポートする必要があるため、CFAutoRelease を使用するとクラッシュが発生します。これを適切にリリースするにはどうすればよいですか?

-(ABRecordRef) myRecord{
 ABRecordRef newRecord = ABPersonCreate();
//some setting here
return CFAutoRelease(newRecord); //how to release here?
}
4

2 に答える 2

2

次のように、Core Foundation オブジェクト用の独自の自動解放機能を構築できるはずです。

inline CFTypeRef MyAutorelease(CFTypeRef obj) { 
    id __autoreleasing result = CFBridgingRelease(obj); 
    return (__bridge CFTypeRef)result; 
}

では__autoreleasing、オブジェクトを強制的に自動解放プールに入れます。

于 2014-05-10T08:45:19.963 に答える