Spec-Zone .ru
спецификации, руководства, описания, API

Библиотека разработчика Mac

Разработчик

Ссылка платформы CoreFoundation ссылка CFDictionary

Опции
Развертывание Target:

На этой странице
Язык:

Ссылка 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 и values C выстраивает в новый словарь. Это число будет количеством словаря; это должно быть неотрицательно и меньше чем или равно фактическому числу ключей или значений.

    keyCallBacks

    Указатель на a CFDictionaryKeyCallBacks структура, инициализированная с обратными вызовами для использования для сохранения, выпустите, опишите и сравните ключи в словаре. Копия содержания структуры обратных вызовов сделана, так, чтобы указатель на структуру на штабеле мог быть передан в или мог быть снова использован для многократных созданий набора.

    Это значение может быть NULL, который обрабатывается как будто допустимая структура версии 0 со всеми полями NULL был передан в. Иначе, если какое-либо из полей не является допустимыми указателями на функции корректного типа, или этот параметр не является допустимым указателем на a CFDictionaryKeyCallBacks структура, поведение не определено. Если какой-либо из ключей, помещенных в набор, не является тем, понятым под одной из функций обратного вызова поведение, когда та функция обратного вызова используется, не определено.

    Если набор будет содержать объекты CFType только, то передайте указатель на kCFTypeDictionaryKeyCallBacks как этот параметр для использования функций обратного вызова по умолчанию.

    valueCallBacks

    Указатель на a CFDictionaryValueCallBacks структура, инициализированная с обратными вызовами для использования для сохранения, выпустите, опишите и сравните значения в словаре. Копия содержания структуры обратных вызовов сделана, так, чтобы указатель на структуру на штабеле мог быть передан в или мог быть снова использован для многократных созданий набора.

    Это значение может быть NULL, который обрабатывается как будто допустимая структура версии 0 со всеми полями NULL был передан в. Иначе, если какое-либо из полей не является допустимыми указателями на функции корректного типа, или этот параметр не является допустимым указателем на a CFDictionaryValueCallBacks структура, поведение не определено. Если какое-либо значение, помещенное в набор, не является тем, понятым под одной из функций обратного вызова поведение, когда та функция обратного вызова используется, не определено.

    Если набор будет содержать объекты 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>) -> Boolean

    Objective 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>) -> Boolean

    Objective 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!) -> CFIndex

    Objective 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>) -> CFIndex

    Objective 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>) -> CFIndex

    Objective 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 различать значение, не найденное, и a NULL значение. Если значение является Базовым объектом Основы, владение соблюдает Получить Правило.

    Оператор импорта

    Objective C

    @import CoreFoundation;

    Swift

    import CoreFoundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Возвращает булево значение, указывающее, является ли данное значение для данного ключа в словаре и возвратах, оценивающих косвенно, если оно существует.

    Объявление

    Swift

    func CFDictionaryGetValueIfPresent(_ theDict: CFDictionary!, _ key: UnsafePointer<Void>, _ value: UnsafeMutablePointer<UnsafePointer<Void>>) -> Boolean

    Objective 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() -> CFTypeID

    Objective 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 в a CFDictionaryKeyCallBacks структура или 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 в a CFDictionaryKeyCallBacks и 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 в a CFDictionaryKeyCallBacks структура.

    Оператор импорта

    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 в a CFDictionaryKeyCallBacks и 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 = CFDictionary

    Objective 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: CFDictionaryValueCallBacks

    Objective C

    const CFDictionaryKeyCallBacks kCFCopyStringDictionaryKeyCallBacks; const CFDictionaryKeyCallBacks kCFTypeDictionaryKeyCallBacks; const CFDictionaryValueCallBacks kCFTypeDictionaryValueCallBacks;

    Константы

    • kCFCopyStringDictionaryKeyCallBacks

      kCFCopyStringDictionaryKeyCallBacks

      Предопределенный CFDictionaryKeyCallBacks структура, содержащая ряд обратных вызовов, подходящих для использования, когда ключи CFDictionary являются всеми объектами CFString, которые могут быть непостоянными и должны быть скопированы для служения в качестве постоянных ключей для значений в словаре.

      Вы обычно используете указатель на эту константу при создании нового словаря.

      Доступный в OS X v10.0 и позже.

    • kCFTypeDictionaryKeyCallBacks

      kCFTypeDictionaryKeyCallBacks

      Предопределенный CFDictionaryKeyCallBacks структура, содержащая ряд обратных вызовов, подходящих для использования, когда ключами CFDictionary являются все CFType-производные-объекты.

      Сохранить обратный вызов CFRetain, обратный вызов выпуска CFRelease, обратный вызов копии CFCopyDescription, равный обратный вызов CFEqual. Поэтому при использовании указателя на эту константу при создании словаря ключи автоматически сохраняются, когда добавлено к набору и выпустили, когда удалено из набора.

      Доступный в OS X v10.0 и позже.

    • kCFTypeDictionaryValueCallBacks

      kCFTypeDictionaryValueCallBacks

      Предопределенный CFDictionaryValueCallBacks структура, содержащая ряд обратных вызовов, подходящих для использования, когда значениями в CFDictionary являются все CFType-производные-объекты.

      Сохранить обратный вызов CFRetain, обратный вызов выпуска CFRelease, обратный вызов копии CFCopyDescription, и равный обратный вызов CFEqual. Поэтому при использовании указателя на эту константу при создании словаря значения автоматически сохраняются, когда добавлено к набору и выпустили, когда удалено из набора.

      Доступный в OS X v10.0 и позже.