Ссылка CFMutableDictionary
CFMutableDictionary управляет динамическими словарями. Основной интерфейс для управления словарями предоставлен Ссылкой CFDictionary. CFMutableDictionary добавляет функции для изменения содержания словаря.
Вы создаете непостоянный объект словаря, использующий любого CFDictionaryCreateMutable
или CFDictionaryCreateMutableCopy
функция. Можно добавить пары ключ/значение с помощью CFDictionaryAddValue
и CFDictionarySetValue
функции. При добавлении пар ключ/значение к словарю не копируются ключи и значения — они сохраняются так, они не лишены законной силы, прежде чем словарь освобожден. Можно удалить пары ключ/значение с помощью CFDictionaryRemoveValue
функция. При удалении пар ключ/значение из словаря выпущены ключи и значения.
CFMutableDictionary “бесплатный соединенный мостом” с его дубликатом Основы Какао, NSMutableDictionary
. То, что это означает, - то, что Базовый тип Основы является взаимозаменяемым в вызовах функции или вызовах метода с соединенным мостом объектом Основы. Это означает, что в методе, где Вы видите NSMutableDictionary *
параметр, можно передать в a CFMutableDictionaryRef
, и в функции, где Вы видите a CFMutableDictionaryRef
параметр, можно передать в экземпляре NSMutableDictionary. Это также применяется к конкретным подклассам NSMutableDictionary. Посмотрите Бесплатные Соединенные мостом Типы для получения дополнительной информации о бесплатном образовании моста.
-
Создает новый непостоянный словарь.
Объявление
Swift
func CFDictionaryCreateMutable(_
allocator
: CFAllocator!, _capacity
: CFIndex, _keyCallBacks
: UnsafePointer<CFDictionaryKeyCallBacks>, _valueCallBacks
: UnsafePointer<CFDictionaryValueCallBacks>) -> CFMutableDictionary!Objective C
CFMutableDictionaryRef CFDictionaryCreateMutable ( CFAllocatorRef allocator, CFIndex capacity, const CFDictionaryKeyCallBacks *keyCallBacks, const CFDictionaryValueCallBacks *valueCallBacks );
Параметры
allocator
Средство выделения для использования для выделения памяти для нового словаря и его хранения для пар ключ/значение. Передача
NULL
илиkCFAllocatorDefault
использовать текущее средство выделения по умолчанию.capacity
Максимальное количество пар ключ/значение, которые могут содержаться новым словарем. Словарь запускается пустой и может расти до этого числа пар ключ/значение (и это может иметь меньше).
Передача
0
указать, что не ограничивается максимальная способность. Значение не должно быть отрицательным.keyCallBacks
Указатель на a
CFDictionaryKeyCallBacks
структура, инициализированная с обратными вызовами для использования для сохранения, выпустите, опишите и сравните ключи в словаре. Копия содержания структуры обратных вызовов сделана, так, чтобы указатель на структуру на штабеле мог быть передан в или мог быть снова использован для многократных созданий набора.Это значение может быть
NULL
, который обрабатывается как допустимая структура версии0
со всеми полямиNULL
. Иначе, если какое-либо из полей не является допустимыми указателями на функции корректного типа, или это значение не является допустимым указателем на aCFDictionaryKeyCallBacks
структура, поведение не определено. Если какой-либо из ключей, помещенных в набор, не является тем, понятым под одной из функций обратного вызова, поведение, когда та функция обратного вызова используется, не определено.Если словарь будет содержать только объекты CFType, то передайте указатель на
kCFTypeDictionaryKeyCallBacks
как этот параметр для использования функций обратного вызова по умолчанию.valueCallBacks
Указатель на a
CFDictionaryValueCallBacks
структура, инициализированная с обратными вызовами для использования для сохранения, выпустите, опишите и сравните значения в словаре. Копия содержания структуры обратных вызовов сделана, так, чтобы указатель на структуру на штабеле мог быть передан в или мог быть снова использован для многократных созданий набора.Это значение может быть
NULL
, который обрабатывается как допустимая структура версии0
со всеми полямиNULL
. Иначе, если какое-либо из полей не является допустимыми указателями на функции корректного типа, или это значение не является допустимым указателем на aCFDictionaryValueCallBacks
структура, поведение не определено. Если какое-либо значение, помещенное в набор, не является тем, понятым под одной из функций обратного вызова, поведение, когда та функция обратного вызова используется, не определено.Если словарь будет содержать объекты CFType только, то передайте указатель на
kCFTypeDictionaryValueCallBacks
как этот параметр для использования функций обратного вызова по умолчанию.Возвращаемое значение
Новый словарь, или
NULL
если была проблема, создающая объект. Владение соблюдает Создать Правило.Оператор импорта
Objective C
@import CoreFoundation;
Swift
import CoreFoundation
Доступность
Доступный в OS X v10.0 и позже.
-
Создает новый непостоянный словарь с парами ключ/значение из другого словаря.
Объявление
Swift
func CFDictionaryCreateMutableCopy(_
allocator
: CFAllocator!, _capacity
: CFIndex, _theDict
: CFDictionary!) -> CFMutableDictionary!Objective C
CFMutableDictionaryRef CFDictionaryCreateMutableCopy ( CFAllocatorRef allocator, CFIndex capacity, CFDictionaryRef theDict );
Параметры
allocator
Средство выделения для использования для выделения памяти для нового словаря и его хранения для пар ключ/значение. Передача
NULL
илиkCFAllocatorDefault
использовать текущее средство выделения по умолчанию.capacity
Максимальное количество пар ключ/значение, которые могут содержаться новым словарем. Словарь запускается с того же числа пар ключ/значение как
theDict
и может расти до этого числа значений (и оно может иметь меньше).Передача
0
указать, что не ограничивается максимальная способность. Если не -0
,capacity
должно быть больше, чем или равным количествуtheDict
.theDict
Словарь для копирования. Ключи и значения из словаря копируются как указатели в новый словарь, не то, на что значения указывают на (если что-либо). Ключи и значения также сохраняются новым словарем. Количество нового словаря совпадает с количеством
theDict
. Новый словарь использует те же обратные вызовы какtheDict
.Возвращаемое значение
Новый словарь, содержащий те же значения как
theDict
. Владение соблюдает Создать Правило.Оператор импорта
Objective C
@import CoreFoundation;
Swift
import CoreFoundation
Доступность
Доступный в OS X v10.0 и позже.
-
Если указанный ключ уже не присутствует, добавляет пара ключ/значение к словарю.
Объявление
Swift
func CFDictionaryAddValue(_
theDict
: CFMutableDictionary!, _key
: UnsafePointer<Void>, _value
: UnsafePointer<Void>)Objective C
void CFDictionaryAddValue ( CFMutableDictionaryRef theDict, const void *key, const void *value );
Параметры
theDict
Словарь для изменения. Если словарь является словарем фиксированной способности, и это полно, прежде чем эта работа, поведение будет не определено.
key
Ключ для значения для добавления к словарю — CFType возражает или значение указателя.
key
сохраняется словарем с помощью сохранить обратного вызова, предоставленного, когда словарь создавался, так должен иметь тип, ожидаемый обратным вызовом. Соответствующий ключ если,key
уже присутствует в словаре, эта функция ничего не делает («добавьте если отсутствующий»).value
CFType возражает или значение указателя для добавления к словарю.
value
сохраняется словарем с помощью сохранить обратного вызова, предоставленного, когда словарь создавался, так должен иметь тип, ожидаемый обратным вызовом.Оператор импорта
Objective C
@import CoreFoundation;
Swift
import CoreFoundation
Доступность
Доступный в OS X v10.0 и позже.
-
Удаляет все пары ключ/значение из словаря, делая его пустым.
Объявление
Swift
func CFDictionaryRemoveAllValues(_
theDict
: CFMutableDictionary!)Objective C
void CFDictionaryRemoveAllValues ( CFMutableDictionaryRef theDict );
Параметры
theDict
Словарь для изменения.
Оператор импорта
Objective C
@import CoreFoundation;
Swift
import CoreFoundation
Доступность
Доступный в OS X v10.0 и позже.
-
Удаляет пару ключ/значение.
Объявление
Swift
func CFDictionaryRemoveValue(_
theDict
: CFMutableDictionary!, _key
: UnsafePointer<Void>)Objective C
void CFDictionaryRemoveValue ( CFMutableDictionaryRef theDict, const void *key );
Параметры
theDict
Словарь для изменения.
key
Ключ значения для удаления из
theDict
. Соответствующий ключ если,key
присутствует вtheDict
, пара ключ/значение удалена из словаря, иначе эта функция ничего не делает («удаляют если настоящее»).Оператор импорта
Objective C
@import CoreFoundation;
Swift
import CoreFoundation
Доступность
Доступный в OS X v10.0 и позже.
-
Заменяет значение, соответствующее данному ключу.
Объявление
Swift
func CFDictionaryReplaceValue(_
theDict
: CFMutableDictionary!, _key
: UnsafePointer<Void>, _value
: UnsafePointer<Void>)Objective C
void CFDictionaryReplaceValue ( CFMutableDictionaryRef theDict, const void *key, const void *value );
Параметры
theDict
Словарь для изменения.
key
Ключ значения для замены в
theDict
. Соответствующий ключ если,key
присутствует в словаре, значение изменяется наvalue
, иначе эта функция ничего не делает (“заменяют если настоящее”).value
Новое значение для
key
.value
объект сохраняетсяtheDict
использование сохранить обратный вызов обеспечило когдаtheDict
создавался, и старое значение выпущено.value
должен иметь тип, ожидаемый обратными вызовами сохранения и выпуска.Оператор импорта
Objective C
@import CoreFoundation;
Swift
import CoreFoundation
Доступность
Доступный в OS X v10.0 и позже.
-
Устанавливает значение, соответствующее данному ключу.
Объявление
Swift
func CFDictionarySetValue(_
theDict
: CFMutableDictionary!, _key
: UnsafePointer<Void>, _value
: UnsafePointer<Void>)Objective C
void CFDictionarySetValue ( CFMutableDictionaryRef theDict, const void *key, const void *value );
Параметры
theDict
Словарь для изменения. Если этот параметр является словарем фиксированной способности, и это полно перед этой работой, и ключ не существует в словаре, поведение не определено.
key
Ключ значения для начинаний
theDict
. Соответствующий ключ если,key
уже присутствует в словаре, только значение для ключа изменяется («добавьте, если отсутствующий, замена если настоящее»). Если не соответствует никакой ключkey
, пара ключ/значение добавляется к словарю.Если пара ключ/значение добавляется, оба
key
иvalue
сохраняются словарем, использование сохранить обратного вызова обеспечило когдаtheDict
создавался.key
должен иметь тип, ожидаемый ключом, сохраняют обратный вызов.value
Значение для добавления к или замена в
theDict
.value
сохраняется с помощью значения, сохраняют обратный вызов, предоставленный когдаtheDict
создавался, и предыдущее значение, если кто-либо выпущен.value
должен иметь тип, ожидаемый обратными вызовами сохранения и выпуска.Оператор импорта
Objective C
@import CoreFoundation;
Swift
import CoreFoundation
Доступность
Доступный в OS X v10.0 и позже.
-
Ссылка на непостоянный объект словаря.
Объявление
Swift
typealias CFMutableDictionaryRef = CFMutableDictionary
Objective C
typedef struct __CFDictionary *CFMutableDictionaryRef;
Оператор импорта
Objective C
@import CoreFoundation;
Swift
import CoreFoundation
Доступность
Доступный в OS X v10.0 и позже.