Function 関数

NSMakeCollectable

Makes a newly allocated Core Foundation object eligible for collection. コレクションにふさわしい、新しくアロケートされたCore Foundationオブジェクトを作ります。

Declaration 宣言

id NSMakeCollectable(CFTypeRef cf);

Discussion 議論

This function is a wrapper for CFMakeCollectable, but its return type is id—avoiding the need for casting when using Cocoa objects. この関数はCFMakeCollectableに対するラッパーです、しかしそれの戻り型はidです — Cocoaオブジェクトを使っている時にキャストする必要をなくしています。

This function may be useful when returning Core Foundation objects in code that must support both garbage-collected and non-garbage-collected environments, as illustrated in the following example. この関数は、ガベージコレクションおよび非ガベージコレクション環境の両方をサポートしなければならないコードにおいてCore Foundationオブジェクトを返している時に役立ちます、以下の例において解説されるように。


- (CFDateRef)foo {
    CFDateRef aCFDate;
    // ...
    return [NSMakeCollectable(aCFDate) autorelease];
}

CFTypeRef style objects are garbage collected, yet only sometime after the last CFRelease is performed. Particularly for fully-bridged CFTypeRef objects such as CFStrings and collections (such as CFDictionary), you must call either CFMakeCollectable or the more type safe NSMakeCollectable, preferably right upon allocation. CFTypeRef形式オブジェクトはガベージコレクションされます、けれども最後のCFReleaseが実行された後ある時期にだけ。とりわけ完全にブリッジされるCFTypeRefオブジェクト、たとえばCFStringおよびcollection(たとえばCFDictionary)に対して、あなたはCFMakeCollectableまたはより型安全なNSMakeCollectableのどちらかを呼び出さなければなりません、できればまさしくアロケーション時に。

See Also 参照

Legacy レガシー