Core Foundation   >   CFArrayCreate(_:_:_:_:)
関数
CFArrayCreate(_:_:_:_:)
与えられた値を持つ新しい不変配列を作成します。
宣言
パラメータ
allocator | 新しい配列にメモリを割り当てるために使用するアロケータとその値の格納場所。現在のデフォルトアロケータを使用するには、NULL または kCFAllocatorDefault を渡して下さい。 |
values | 新しい配列内にあるポインタサイズの値の C の配列。新しい配列内の値は、この C 配列に現れる順序と同じ順序で並べられます。numValues が 0 の場合、この値は NULL になりえます。この C の配列はこの関数によって変更または解放されません。values が少なくとも numValues 要素の C の配列への有効なポインタでない場合、動作は未定義です。 |
numValues | C の配列の値から新しい配列にコピーする値の数。この数は、新しい配列のカウントになり、負の数でも、values の要素数よりも大きくてもいけません。 |
callbacks | コレクションの各値で使用するための配列の呼び出し関数で初期化された CFArrayCallBacks 構造体へのポインタ。fetain の呼び出し関数は、この関数内で使用されます。たとえば、C の配列の値から新しい値をすべて保持するなどです。呼び出し関数構造体の内容のコピーが作成されるので、スタック上の構造体へのポインタを渡すか、複数のコレクション作成に再利用できます。 この値は、すべてのフィールドが NULL であるバージョン 0 の有効な構造体が渡されたかのように扱われる NULL でもかまいません。そうでない場合、いずれかのフィールドが正しい型の関数への有効なポインタでないか、CFArrayCallBacks 構造体への有効なポインタでない場合、動作は未定義です。コレクションに入れられた全ての値が呼び出し関数の 1 つで理解できない値である場合、その呼び出し関数が使用されるときの動作は未定義です。 コレクションに CFType オブジェクトのみが含まれている場合は、kCFTypeArrayCallBacks (&kCFTypeArrayCallBacks) へのポインタを渡して、デフォルトの呼び出し関数を使用します。 |
戻り値
values から numValues を含む新しい不変の配列。オブジェクトの作成に問題があった場合は NULL。所有権は 作成規則 に従います。