Core Foundation   >   CFDictionaryCreate(_:_:_:_:_:_:)
関数
CFDictionaryCreate(_:_:_:_:_:_:)
指定されたキー値のペアを含む不変の辞書を作成します。
宣言
パラメータ
allocator | 新しい辞書にメモリを割り当てるために使用するアロケータ。現行のデフォルトアロケータを使用するには、NULL または kCFAllocatorDefault を渡します。 |
keys | 新しい辞書に入れるべきポインタサイズのキーの C 配列。numValues パラメーターが 0 の場合、この値は NULL になります。この C 配列は、この関数によって変更または解放されません。値は、少なくとも numValues ポインターの C 配列への有効なポインターでなければなりません。 |
values | 新しい辞書に入れるべきポインタサイズの値の C 配列。numValues パラメーターが 0 の場合、この値は NULL になります。この C 配列は、この関数によって変更または解放されません。値は、少なくとも numValues 要素の C 配列への有効なポインタでなければなりません。 |
numValues | キーと値からコピーして C 配列を新しい辞書に入れるキー値のペアの数。この数字は辞書のカウントになります。負でなく、キーまたは値の実際の数以下でなければなりません。 |
keyCallBacks | 辞書内のキーの保持、解放、記述、および比較に使用する呼び出し関数で初期化された CFDictionaryKeyCallBacks 構造体へのポインター。呼び出し関数構造体の内容のコピーが作成されるので、スタック上の構造体へのポインタが渡されるか、複数のコレクションの作成に再利用できます。 この値は、すべてのフィールドが NULL であるバージョン 0 の有効な構造体が渡されたかのように扱われる NULL かも知れません。そうでない場合、いずれかのフィールドが正しい型の関数への有効なポインタでないか、CFDictionaryKeyCallBacks 構造体への有効なポインタでない場合、動作は未定義です。コレクションに入れられたキーのいずれかが呼び出し関数の 1 つにより理解されない場合、その呼び出し関数が使用されるときの動作は未定義です。 コレクションに CFType オブジェクトのみが含まれる場合は、このパラメータとして kCFTypeDictionaryKeyCallBacks へのポインタを渡して、デフォルトの呼び出し関数を使用して下さい。 |
valueCallBacks | 辞書内の値の保持、解放、記述、および比較に使用する呼び出し関数で初期化された CFDictionaryValueCallBacks 構造体へのポインタ。呼び出し関数の構造体の内容のコピーが作成されるので、スタック上の構造体へのポインタが渡されるか、複数のコレクションの作成に再利用できます。 この値は、すべてのフィールドが NULL であるバージョン 0 の有効な構造体が渡されたかのように扱われる NULL かも知れません。そうでない場合、いずれかのフィールドが正しい型の関数への有効なポインタでないか、CFDictionaryValueCallBacks 構造体への有効なポインタでない場合、動作は未定義です。コレクションに入れられた値のいずれかが呼び出し関数の 1 つにより理解されない値である場合、その呼び出し関数が使用されるときの動作は未定義です。 コレクションに CFType オブジェクトのみが含まれる場合は、このパラメータとして kCFTypeDictionaryValueCallBacks へのポインタを渡して、デフォルトの呼び出し関数を使用して下さい。 |
戻り値
新しい辞書。オブジェクトの作成に問題があった場合は NULL。所有権は 作成規則 に従います。