Ссылка CFDictionary
CFDictionary и его полученный непостоянный тип, Ссылка CFMutableDictionary, управляют ассоциациями пар ключ/значение. CFDictionary создает статические словари, где Вы устанавливаете пары ключ/значение, сначала создавание словаря и не может изменить их позже; CFMutableDictionary создает динамические словари, где можно добавить или удалить пары ключ/значение в любое время, и словарь автоматически выделяет память по мере необходимости.
Пару ключ/значение в словаре вызывают записью. Каждая запись состоит из одного объекта, представляющего ключ и второй объект, который является что значение ключа. В словаре ключи уникальны. Т.е. никакие два ключа в единственном словаре не равны (как определено равным обратным вызовом). Внутренне, словарь использует хэш-таблицу, чтобы организовать ее хранение и обеспечить быстрый доступ к значению, данному соответствующий ключ.
Ключи для CFDictionary могут иметь любой тип C, однако отметить, что, если Вы хотите преобразовать CFPropertyList в XML, ключи любого словаря должны быть объектами CFString.
Вы создаете статические словари с помощью любого CFDictionaryCreate или CFDictionaryCreateCopy функция. Пары ключ/значение передаются как параметры CFDictionaryCreate. При добавлении пар ключ/значение к словарю не копируются ключи и значения — они сохраняются так, они не лишены законной силы, прежде чем словарь освобожден.
CFDictionary обеспечивает функции для запросов значений словаря. Функция CFDictionaryGetCount возвращает число пар ключ/значение в словаре; CFDictionaryContainsValue функционируйте проверки, если значение находится в словаре; и CFDictionaryGetKeysAndValues возвращает массив C, содержащий все значения и массив C, содержащий все ключи в словаре.
CFDictionaryApplyFunction функция позволяет Вам применить функцию ко всем парам ключ/значение в словаре.
CFDictionary “бесплатный соединенный мостом” с его дубликатом Основы Какао, NSDictionary. Это означает, что Базовый тип Основы является взаимозаменяемым в вызовах функции или вызовах метода с соединенным мостом объектом Основы. Поэтому в методе, где Вы видите NSDictionary * параметр, можно передать в a CFDictionaryRef, и в функции, где Вы видите a CFDictionaryRef параметр, можно передать в экземпляре NSDictionary. Это также применяется к конкретным подклассам NSDictionary. Посмотрите Бесплатные Соединенные мостом Типы для получения дополнительной информации о бесплатном образовании моста.
-
Создает неизменный словарь, содержащий указанные пары ключ/значение.
Объявление
Swift
func CFDictionaryCreate(_allocator: CFAllocator!, _keys: UnsafeMutablePointer<UnsafePointer<Void>>, _values: UnsafeMutablePointer<UnsafePointer<Void>>, _numValues: CFIndex, _keyCallBacks: UnsafePointer<CFDictionaryKeyCallBacks>, _valueCallBacks: UnsafePointer<CFDictionaryValueCallBacks>) -> CFDictionary!Objective C
CFDictionaryRef CFDictionaryCreate ( CFAllocatorRef allocator, const void **keys, const void **values, CFIndex numValues, const CFDictionaryKeyCallBacks *keyCallBacks, const CFDictionaryValueCallBacks *valueCallBacks );Параметры
allocatorСредство выделения для использования для выделения памяти для нового словаря. Передача
NULLилиkCFAllocatorDefaultиспользовать текущее средство выделения по умолчанию.keysМассив C ключей размера указателя, чтобы быть в новом словаре. Это значение может быть
NULLеслиnumValuesпараметр0. Этот массив C не изменен или освобожден этой функцией. Значение должно быть допустимым указателем на массив C, по крайней мере,numValuesуказатели.valuesМассив C значений размера указателя, чтобы быть в новом словаре. Это значение может быть
NULLеслиnumValuesпараметр0. Этот массив C не изменен или освобожден этой функцией. Значение должно быть допустимым указателем на массив C, по крайней мере,numValuesэлементы.numValuesЧисло пар ключ/значение для копирования с
keysиvaluesC выстраивает в новый словарь. Это число будет количеством словаря; это должно быть неотрицательно и меньше чем или равно фактическому числу ключей или значений.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 CFDictionaryCreateCopy(_allocator: CFAllocator!, _theDict: CFDictionary!) -> CFDictionary!Objective C
CFDictionaryRef CFDictionaryCreateCopy ( CFAllocatorRef allocator, CFDictionaryRef theDict );Параметры
allocatorСредство выделения для использования для выделения памяти для нового словаря. Передача
NULLилиkCFAllocatorDefaultиспользовать текущее средство выделения по умолчанию.theDictСловарь для копирования. Ключи и значения из словаря копируются как указатели в новый словарь. Однако ключи и значения также сохраняются новым словарем. Количество нового словаря совпадает с количеством
theDict. Новый словарь использует те же обратные вызовы какtheDict.Возвращаемое значение
Новый словарь, содержащий те же пары ключ/значение как
theDict, илиNULLесли была проблема, создающая объект. Владение соблюдает Создать Правило.Оператор импорта
Objective C
@import CoreFoundation;Swift
import CoreFoundationДоступность
Доступный в OS X v10.0 и позже.
-
Возвращает булево значение, указывающее, является ли данный ключ в словаре.
Объявление
Swift
func CFDictionaryContainsKey(_theDict: CFDictionary!, _key: UnsafePointer<Void>) -> BooleanObjective C
Boolean CFDictionaryContainsKey ( CFDictionaryRef theDict, const void *key );Параметры
theDictСловарь для исследования.
keyКлюч, для которого можно найти соответствия в
theDict. Ключевой хеш и равные обратные вызовы обеспечили, когда словарь создавался, используются для сравнения. Если обратный вызов хешаNULL,keyобрабатывается как указатель и преобразовывается в целое число. Если равный обратный вызовNULL, равенство указателя (в C, ==) используется. Еслиkey, или любой из ключей в словаре, не понят под равным обратным вызовом, поведение не определено.Возвращаемое значение
trueеслиkeyнаходится в словаре, иначеfalse.Оператор импорта
Objective C
@import CoreFoundation;Swift
import CoreFoundationДоступность
Доступный в OS X v10.0 и позже.
-
Возвращает булево значение, указывающее, является ли данное значение в словаре.
Объявление
Swift
func CFDictionaryContainsValue(_theDict: CFDictionary!, _value: UnsafePointer<Void>) -> BooleanObjective C
Boolean CFDictionaryContainsValue ( CFDictionaryRef theDict, const void *value );Параметры
theDictСловарь для исследования.
valueЗначение, для которого можно найти соответствия в
theDict. Значение, которое обеспечил равный обратный вызов, когда словарь создавался, используется для сравнения. Если равный обратный вызов былNULL, равенство указателя (в C, ==) используется. Еслиvalue, или любое другое значение в словаре, не понят под равным обратным вызовом, поведение не определено.Возвращаемое значение
trueеслиvalueнаходится в словаре, иначеfalse.Оператор импорта
Objective C
@import CoreFoundation;Swift
import CoreFoundationДоступность
Доступный в OS X v10.0 и позже.
-
Возвращает число пар ключ/значение в словаре.
Объявление
Swift
func CFDictionaryGetCount(_theDict: CFDictionary!) -> CFIndexObjective C
CFIndex CFDictionaryGetCount ( CFDictionaryRef theDict );Параметры
theDictСловарь для исследования.
Возвращаемое значение
Число числа пар ключ/значение в
theDict.Оператор импорта
Objective C
@import CoreFoundation;Swift
import CoreFoundationДоступность
Доступный в OS X v10.0 и позже.
-
Возвращает число раз, ключ происходит в словаре.
Объявление
Swift
func CFDictionaryGetCountOfKey(_theDict: CFDictionary!, _key: UnsafePointer<Void>) -> CFIndexObjective C
CFIndex CFDictionaryGetCountOfKey ( CFDictionaryRef theDict, const void *key );Параметры
theDictСловарь для исследования.
keyКлюч, для которого можно найти соответствия в
theDict. Ключевой хеш и равные обратные вызовы обеспечили, когда словарь создавался, используются для сравнения. Если обратный вызов хеша былNULL, ключ обрабатывается как указатель и преобразовывается в целое число. Если равный обратный вызов былNULL, равенство указателя (в C, ==) используется. Еслиkey, или любой из ключей в словаре, не понят под равным обратным вызовом, поведение не определено.Возвращаемое значение
Возвраты
1если соответствующий ключ используется словарем, иначе0.Оператор импорта
Objective C
@import CoreFoundation;Swift
import CoreFoundationДоступность
Доступный в OS X v10.0 и позже.
-
Считает число раз, данное значение происходит в словаре.
Объявление
Swift
func CFDictionaryGetCountOfValue(_theDict: CFDictionary!, _value: UnsafePointer<Void>) -> CFIndexObjective C
CFIndex CFDictionaryGetCountOfValue ( CFDictionaryRef theDict, const void *value );Параметры
theDictСловарь для исследования.
valueЗначение, для которого можно найти соответствия в
theDict. Значение, которое обеспечил равный обратный вызов, когда словарь создавался, используется для сравнения. Если равный обратный вызов былNULL, равенство указателя (в C, ==) используется. Еслиvalue, или любое другое значение в словаре, не понят под равным обратным вызовом, поведение не определено.Возвращаемое значение
Число раз
valueпроисходит вtheDict.Оператор импорта
Objective C
@import CoreFoundation;Swift
import CoreFoundationДоступность
Доступный в OS X v10.0 и позже.
-
Заливки два буфера с ключами и значениями из словаря.
Объявление
Swift
func CFDictionaryGetKeysAndValues(_theDict: CFDictionary!, _keys: UnsafeMutablePointer<UnsafePointer<Void>>, _values: UnsafeMutablePointer<UnsafePointer<Void>>)Objective C
void CFDictionaryGetKeysAndValues ( CFDictionaryRef theDict, const void **keys, const void **values );Параметры
theDictСловарь для исследования.
keysМассив C значений размера указателя, что, по возврату, заполнено ключами от
theDict. Ключи и значения C массивы параллельны друг другу (т.е. элементы в тех же индексах формируют пару ключ/значение из словаря). Это значение должно быть допустимым указателем на массив C надлежащего типа и размера (т.е. размер, равный количествуtheDict), илиNULLесли не требуются ключи. Если ключи являются Базовыми объектами Основы, владение соблюдает Получить Правило.valuesМассив C значений размера указателя, что, по возврату, заполнено значениями от
theDict. Ключи и значения C массивы параллельны друг другу (т.е. элементы в тех же индексах формируют пару ключ/значение из словаря). Это значение должно быть допустимым указателем на массив C надлежащего типа и размера (т.е. размер, равный количествуtheDict), илиNULLесли не требуются значения. Если значения являются Базовыми объектами Основы, владение соблюдает Получить Правило.Оператор импорта
Objective C
@import CoreFoundation;Swift
import CoreFoundationДоступность
Доступный в OS X v10.0 и позже.
-
Возвращает значение, связанное с данным ключом.
Объявление
Swift
func CFDictionaryGetValue(_theDict: CFDictionary!, _key: UnsafePointer<Void>) -> UnsafePointer<Void>Objective C
const void * CFDictionaryGetValue ( CFDictionaryRef theDict, const void *key );Параметры
theDictСловарь для исследования.
keyКлюч, для которого можно найти соответствие в
theDict. Ключевой хеш и равные обратные вызовы обеспечили, когда словарь создавался, используются для сравнения. Если обратный вызов хеша былNULL, ключ обрабатывается как указатель и преобразовывается в целое число. Если равный обратный вызов былNULL, равенство указателя (в C, ==) используется. Еслиkey, или любой из ключейtheDict, не понят под равным обратным вызовом, поведение не определено.Возвращаемое значение
Значение связалось с
keyвtheDict, илиNULLесли никакое соответствие пары ключ/значениеkeyсуществует. С тех порNULLтакже допустимое значение в некоторых словарях, использоватьCFDictionaryGetValueIfPresentразличать значение, не найденное, и aNULLзначение. Если значение является Базовым объектом Основы, владение соблюдает Получить Правило.Оператор импорта
Objective C
@import CoreFoundation;Swift
import CoreFoundationДоступность
Доступный в OS X v10.0 и позже.
-
Возвращает булево значение, указывающее, является ли данное значение для данного ключа в словаре и возвратах, оценивающих косвенно, если оно существует.
Объявление
Swift
func CFDictionaryGetValueIfPresent(_theDict: CFDictionary!, _key: UnsafePointer<Void>, _value: UnsafeMutablePointer<UnsafePointer<Void>>) -> BooleanObjective C
Boolean CFDictionaryGetValueIfPresent ( CFDictionaryRef theDict, const void *key, const void **value );Параметры
theDictСловарь для исследования.
keyКлюч, для которого можно найти соответствие в
theDict. Ключевой хеш и равные обратные вызовы обеспечили, когда словарь создавался, используются для сравнения. Если обратный вызов хеша былNULL,keyобрабатывается как указатель и преобразовывается в целое число. Если равный обратный вызов былNULL, равенство указателя (в C, ==) используется. Еслиkey, или любой из ключейtheDict, не понят под равным обратным вызовом, поведение не определено.valueУказатель на память, которая, по возврату, заполнена значением размера указателя, если найден соответствующий ключ. Если никакое ключевое соответствие не найдено, содержание хранения, на которое указывает этот параметр, не определено. Это значение может быть
NULL, когда значение из словаря не возвращается (но возвращаемое значение этой функции все еще указывает, присутствовала ли пара ключ/значение). Если значение является Базовым объектом Основы, владение соблюдает Получить Правило.Возвращаемое значение
trueесли соответствующий ключ был найден, иначеfalse.Оператор импорта
Objective C
@import CoreFoundation;Swift
import CoreFoundationДоступность
Доступный в OS X v10.0 и позже.
-
Вызывает функцию один раз для каждой пары ключ/значение в словаре.
Объявление
Swift
func CFDictionaryApplyFunction(_theDict: CFDictionary!, _applier: CFDictionaryApplierFunction, _context: UnsafeMutablePointer<Void>)Objective C
void CFDictionaryApplyFunction ( CFDictionaryRef theDict, CFDictionaryApplierFunction applier, void *context );Параметры
theDictСловарь для работы на.
applierФункция обратного вызова для вызова один раз для каждой пары ключ/значение в
theDict. Если этот параметр не является указателем на функцию корректного прототипа, поведение не определено. Если существуют ключи или значения которыйapplierфункция не ожидает или не может должным образом примениться к, поведение не определено.contextОпределенное с помощью программы значение размера указателя, которое передается как третий параметр функции applier, но иначе не использовано этой функцией. Значение должно быть подходящим для
applierфункция.Обсуждение
Если эта функция выполняет итерации по непостоянному набору, это небезопасно для
applierфункционируйте для изменения содержания набора.Оператор импорта
Objective C
@import CoreFoundation;Swift
import CoreFoundationДоступность
Доступный в OS X v10.0 и позже.
-
Возвращает идентификатор типа для непрозрачного типа CFDictionary.
Объявление
Swift
func CFDictionaryGetTypeID() -> CFTypeIDObjective C
CFTypeID CFDictionaryGetTypeID ( void );Возвращаемое значение
Идентификатор типа для непрозрачного типа CFDictionary.
Обсуждение
Объекты CFMutableDictionary имеют тот же идентификатор типа как объекты CFDictionary.
Оператор импорта
Objective C
@import CoreFoundation;Swift
import CoreFoundationДоступность
Доступный в OS X v10.0 и позже.
-
Прототип функции обратного вызова, которая может быть применена к каждой паре ключ/значение в словаре.
Объявление
Swift
typealias CFDictionaryApplierFunction = CFunctionPointer<((UnsafePointer<Void>, UnsafePointer<Void>, UnsafeMutablePointer<Void>) -> Void)>Objective C
typedef void (*CFDictionaryApplierFunction) ( const void *key, const void *value, void *context );Параметры
keyКлюч связался с текущей парой ключ/значение.
valueЗначение связалось с текущей парой ключ/значение.
contextОпределенный с помощью программы параметр контекста, данный применять функции.
Обсуждение
Этот обратный вызов передается
CFDictionaryApplyFunctionфункция, выполняющая итерации по парам ключ/значение в словаре и применяющая поведение, определенное в функции applier к каждой паре ключ/значение в словаре.Оператор импорта
Objective C
@import CoreFoundation;Swift
import CoreFoundationДоступность
Доступный в OS X v10.0 и позже.
-
Прототип функции обратного вызова раньше получал описание значения или вводил словарь.
Объявление
Swift
typealias CFDictionaryCopyDescriptionCallBack = CFunctionPointer<((UnsafePointer<Void>) -> Unmanaged<CFString>!)>Objective C
typedef CFStringRef (*CFDictionaryCopyDescriptionCallBack)( const void *value );Параметры
valueЗначение, которое будет описано.
Возвращаемое значение
Текстовое описание
value.Обсуждение
Этот обратный вызов передается
CFDictionaryCreateв aCFDictionaryKeyCallBacksструктура илиCFDictionaryValueCallBacks. Этот обратный вызов используетсяCFCopyDescriptionфункция.Оператор импорта
Objective C
@import CoreFoundation;Swift
import CoreFoundationДоступность
Доступный в OS X v10.0 и позже.
-
Прототип функции обратного вызова раньше определял, вводят ли два значения или словарь, равны.
Объявление
Swift
typealias CFDictionaryEqualCallBack = CFunctionPointer<((UnsafePointer<Void>, UnsafePointer<Void>) -> Boolean)>Objective C
typedef Boolean (*CFDictionaryEqualCallBack) ( const void *value1, const void *value2 );Параметры
value1Значение в словаре.
value2Другое значение в словаре.
Обсуждение
Этот обратный вызов передается
CFDictionaryCreateв aCFDictionaryKeyCallBacksиCFDictionaryValueCallBacksструктура.Оператор импорта
Objective C
@import CoreFoundation;Swift
import CoreFoundationДоступность
Доступный в OS X v10.0 и позже.
-
Прототип функции обратного вызова, вызванной для вычислений хэш-кода для ключа. Когда к парам ключ/значение получают доступ, добавляют или удаляют из набора, хэш-коды используются.
Объявление
Swift
typealias CFDictionaryHashCallBack = CFunctionPointer<((UnsafePointer<Void>) -> CFHashCode)>Objective C
typedef CFHashCode (*CFDictionaryHashCallBack) ( const void *value );Параметры
valueЗначение раньше вычисляло хэш-код.
Возвращаемое значение
Целое число, которое может использоваться в качестве табличного адреса в структуре хэш-таблицы.
Обсуждение
Этот обратный вызов передается
CFDictionaryCreateв aCFDictionaryKeyCallBacksструктура.Оператор импорта
Objective C
@import CoreFoundation;Swift
import CoreFoundationДоступность
Доступный в OS X v10.0 и позже.
-
Прототип функции обратного вызова раньше выпускал пару ключ/значение, прежде чем он будет удален из словаря.
Объявление
Swift
typealias CFDictionaryReleaseCallBack = CFunctionPointer<((CFAllocator!, UnsafePointer<Void>) -> Void)>Objective C
typedef void (*CFDictionaryReleaseCallBack) ( CFAllocatorRef allocator, const void *value );Параметры
allocatorСредство выделения словаря.
valueЗначение, удаляемое из словаря.
Оператор импорта
Objective C
@import CoreFoundation;Swift
import CoreFoundationДоступность
Доступный в OS X v10.0 и позже.
-
Прототип функции обратного вызова раньше сохранял значение или ключ, добавляемый к словарю.
Объявление
Swift
typealias CFDictionaryRetainCallBack = CFunctionPointer<((CFAllocator!, UnsafePointer<Void>) -> UnsafePointer<Void>)>Objective C
typedef const void *(*CFDictionaryRetainCallBack) ( CFAllocatorRef allocator, const void *value );Параметры
allocatorСредство выделения словаря.
valueЗначение, добавляемое к словарю.
Возвращаемое значение
Значение или ключ для хранения в словаре, который обычно является
valueесли различное значение должно быть сохранено в наборе, параметр передал этому обратному вызову, но может быть различным значением.Обсуждение
Этот обратный вызов передается
CFDictionaryCreateв aCFDictionaryKeyCallBacksиCFDictionaryValueCallBacksструктура.Оператор импорта
Objective C
@import CoreFoundation;Swift
import CoreFoundationДоступность
Доступный в OS X v10.0 и позже.
-
Эта структура содержит обратные вызовы, используемые, чтобы сохранить, выпустить, описать, и сравнить ключи в словаре.
Объявление
Swift
struct CFDictionaryKeyCallBacks { var version: CFIndex var retain: CFDictionaryRetainCallBack var release: CFDictionaryReleaseCallBack var copyDescription: CFDictionaryCopyDescriptionCallBack var equal: CFDictionaryEqualCallBack var hash: CFDictionaryHashCallBack }Objective C
struct CFDictionaryKeyCallBacks { CFIndex version; CFDictionaryRetainCallBack retain; CFDictionaryReleaseCallBack release; CFDictionaryCopyDescriptionCallBack copyDescription; CFDictionaryEqualCallBack equal; CFDictionaryHashCallBack hash; }; typedef struct CFDictionaryKeyCallBacks CFDictionaryKeyCallBacks;Поля
versionНомер версии этой структуры. Если не одни из определенных номеров версий для этого непрозрачного типа, поведение не определено. Текущая версия этой структуры 0.
retainОбратный вызов раньше сохранял каждый ключ, поскольку они добавляются к набору. Этот обратный вызов возвращает значение для использования в качестве ключа в словаре, который обычно является параметром, передаваемым по значению, передал этому обратному вызову, но может быть различное значение, если различное значение должно использоваться в качестве ключа. Если
NULL, ключи не сохраняются. ПосмотритеCFDictionaryRetainCallBackдля описания параметров этой функции.releaseОбратный вызов привык для ключей разъединения, когда они удалены из словаря. Если
NULL, клавиши не отпускаются. ПосмотритеCFDictionaryReleaseCallBackдля описания этого обратного вызова.copyDescriptionОбратный вызов раньше создавал представление описательной строки каждого ключа в словаре. Если
NULL, набор создаст простое описание каждого ключа. ПосмотритеCFDictionaryCopyDescriptionCallBackдля описания этого обратного вызова.equalОбратный вызов раньше сравнивал ключи в словаре для равенства. Если
NULL, набор будет использовать равенство указателя для сравнения ключей в наборе. ПосмотритеCFDictionaryEqualCallBackдля описания этого обратного вызова.hashОбратный вызов раньше вычислял хэш-код для ключей, как они привыкли к доступу, добавьте или удалите значения в словаре. Если
NULL, набор вычисляет хэш-код путем преобразования значения указателя в целое число. ПосмотритеCFDictionaryHashCallBackдля описания этого обратного вызова.Доступность
Доступный в OS X v10.0 и позже.
-
Ссылка на неизменный объект словаря.
Объявление
Swift
typealias CFDictionaryRef = CFDictionaryObjective C
typedef const struct __CFDictionary *CFDictionaryRef;Оператор импорта
Objective C
@import CoreFoundation;Swift
import CoreFoundationДоступность
Доступный в OS X v10.0 и позже.
-
Эта структура содержит обратные вызовы, используемые, чтобы сохранить, выпустить, описать, и сравнить значения в словаре.
Объявление
Swift
struct CFDictionaryValueCallBacks { var version: CFIndex var retain: CFDictionaryRetainCallBack var release: CFDictionaryReleaseCallBack var copyDescription: CFDictionaryCopyDescriptionCallBack var equal: CFDictionaryEqualCallBack }Objective C
struct CFDictionaryValueCallBacks { CFIndex version; CFDictionaryRetainCallBack retain; CFDictionaryReleaseCallBack release; CFDictionaryCopyDescriptionCallBack copyDescription; CFDictionaryEqualCallBack equal; }; typedef struct CFDictionaryValueCallBacks CFDictionaryValueCallBacks;Поля
versionНомер версии этой структуры. Если не одни из определенных номеров версий для этого непрозрачного типа, поведение не определено. Текущая версия этой структуры 0.
retainОбратный вызов раньше сохранял каждое значение, поскольку они добавляются к набору. Этот обратный вызов возвращает значение для использования в качестве значения в словаре, который обычно является параметром, передаваемым по значению, передал этому обратному вызову, но может быть различное значение, если различное значение должно использоваться в качестве значения. Если
NULL, значения не сохраняются. ПосмотритеCFDictionaryRetainCallBackдля описания параметров этой функции.releaseОбратный вызов раньше выпускал значения, когда они удалены из словаря. Если
NULL, значения не выпущены. ПосмотритеCFDictionaryReleaseCallBackдля описания этого обратного вызова.copyDescriptionОбратный вызов раньше создавал представление описательной строки каждого значения в словаре. Если
NULL, набор создаст простое описание каждого значения. ПосмотритеCFDictionaryCopyDescriptionCallBackдля описания этого обратного вызова.equalОбратный вызов раньше сравнивал значения в словаре для равенства. Если
NULL, набор будет использовать равенство указателя для сравнения значений в наборе. ПосмотритеCFDictionaryEqualCallBackдля описания этого обратного вызова.Доступность
Доступный в OS X v10.0 и позже.
-
CFDictionary обеспечивает некоторые предопределенные обратные вызовы для Вашего удобства.
Объявление
Swift
let kCFCopyStringDictionaryKeyCallBacks: CFDictionaryKeyCallBacks let kCFTypeDictionaryKeyCallBacks: CFDictionaryKeyCallBacks let kCFTypeDictionaryValueCallBacks: CFDictionaryValueCallBacksObjective C
const CFDictionaryKeyCallBacks kCFCopyStringDictionaryKeyCallBacks; const CFDictionaryKeyCallBacks kCFTypeDictionaryKeyCallBacks; const CFDictionaryValueCallBacks kCFTypeDictionaryValueCallBacks;Константы
-
kCFCopyStringDictionaryKeyCallBackskCFCopyStringDictionaryKeyCallBacksПредопределенный
CFDictionaryKeyCallBacksструктура, содержащая ряд обратных вызовов, подходящих для использования, когда ключи CFDictionary являются всеми объектами CFString, которые могут быть непостоянными и должны быть скопированы для служения в качестве постоянных ключей для значений в словаре.Вы обычно используете указатель на эту константу при создании нового словаря.
Доступный в OS X v10.0 и позже.
-
kCFTypeDictionaryKeyCallBackskCFTypeDictionaryKeyCallBacksПредопределенный
CFDictionaryKeyCallBacksструктура, содержащая ряд обратных вызовов, подходящих для использования, когда ключами CFDictionary являются все CFType-производные-объекты.Сохранить обратный вызов
CFRetain, обратный вызов выпускаCFRelease, обратный вызов копииCFCopyDescription, равный обратный вызовCFEqual. Поэтому при использовании указателя на эту константу при создании словаря ключи автоматически сохраняются, когда добавлено к набору и выпустили, когда удалено из набора.Доступный в OS X v10.0 и позже.
-
kCFTypeDictionaryValueCallBackskCFTypeDictionaryValueCallBacksПредопределенный
CFDictionaryValueCallBacksструктура, содержащая ряд обратных вызовов, подходящих для использования, когда значениями в CFDictionary являются все CFType-производные-объекты.Сохранить обратный вызов
CFRetain, обратный вызов выпускаCFRelease, обратный вызов копииCFCopyDescription, и равный обратный вызовCFEqual. Поэтому при использовании указателя на эту константу при создании словаря значения автоматически сохраняются, когда добавлено к набору и выпустили, когда удалено из набора.Доступный в OS X v10.0 и позже.
-
