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

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

Разработчик

Ссылка платформы основы ссылка класса NSMapTable

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

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

NSMapTable

Наследование


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


Swift

import Foundation

Objective C

@import Foundation;

Доступность


Доступный в iOS 6.0 и позже.

NSMapTable непостоянный набор, смоделированный после NSDictionary но предоставляет различные возможности.

  • Главной опции состоял в том, чтобы содержать ключи и/или значения «слабо» способом, что записи удалены, когда в отношении одного из объектов предъявляют претензии.

  • Его ключи или значения могут быть скопированы на вводе или могут использовать идентификационные данные указателя для равенства и хеширования.

  • Это может содержать произвольные указатели (его содержание не ограничивается к тому, чтобы быть объектами).

    Можно сконфигурировать NSMapTable экземпляр для работы на произвольные указатели и не только возражает, несмотря на то, что обычно Вы призваны использовать функцию C API для void * указатели. (См. Управляющие Таблицы Карты для получения дополнительной информации) основанный на объектах API (такой как setObject:forKey:) не будет работать на необъектные указатели без преобразования типа.

При конфигурировании таблиц карты обратите внимание на то, что только опции, перечисленные в NSMapTableOptions, гарантируют, что остальная часть API будет работать правильно — включая копирование, архивацию и быстрое перечисление. В то время как другой NSPointerFunctions опции используются для определенных конфигураций, например, для содержания произвольных указателей, не, все комбинации опций допустимы. С некоторыми комбинациями таблица карты может не работать правильно или даже не может быть инициализирована правильно.

Разделение на подклассы примечаний

NSMapTable не подходит для разделения на подклассы.

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

    Объявление

    Swift

    init(keyOptions keys: NSPointerFunctionsOptions, valueOptions values: NSPointerFunctionsOptions, capacity capacity: Int)

    Objective C

    - (instancetype)initWithKeyOptions:(NSPointerFunctionsOptions)keys valueOptions:(NSPointerFunctionsOptions)values capacity:(NSUInteger)capacity

    Параметры

    keys

    Немного поля, указывающего опции для ключей в таблице карты. Для возможных значений посмотрите “NSMapTableOptions”.

    values

    Немного поля, указывающего опции для значений в таблице карты. Для возможных значений посмотрите “NSMapTableOptions”.

    capacity

    Начальная способность таблицы карты. Это - просто подсказка; таблица карты может впоследствии расти и уменьшиться как требуется.

    Возвращаемое значение

    Таблица карты инициализировала использование данных опций.

    Обсуждение

    values должен содержать записи во всех индексах, указанных в keys.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в iOS 6.0 и позже.

  • Возвращает новую таблицу карты, инициализированную с данными опциями

    Объявление

    Swift

    init(keyOptions keyOptions: NSPointerFunctionsOptions, valueOptions valueOptions: NSPointerFunctionsOptions) -> NSMapTable

    Objective C

    + (NSMapTable *)mapTableWithKeyOptions:(NSPointerFunctionsOptions)keyOptions valueOptions:(NSPointerFunctionsOptions)valueOptions

    Параметры

    keyOptions

    Немного поля, указывающего опции для ключей в таблице карты. Для возможных значений посмотрите “NSMapTableOptions”.

    valueOptions

    Немного поля, указывающего опции для значений в таблице карты. Для возможных значений посмотрите “NSMapTableOptions”.

    Возвращаемое значение

    Новая таблица карты, инициализированная с данными опциями.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в iOS 6.0 и позже.

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

    Объявление

    Swift

    init(keyPointerFunctions keyFunctions: NSPointerFunctions, valuePointerFunctions valueFunctions: NSPointerFunctions, capacity initialCapacity: Int)

    Objective C

    - (instancetype)initWithKeyPointerFunctions:(NSPointerFunctions *)keyFunctions valuePointerFunctions:(NSPointerFunctions *)valueFunctions capacity:(NSUInteger)initialCapacity

    Параметры

    keyFunctions

    Функции табличное использование карты для управления ключами.

    valueFunctions

    Функции табличное использование карты для управления значениями.

    initialCapacity

    Начальная способность таблицы карты. Это - просто подсказка; таблица карты может впоследствии расти и уменьшиться как требуется.

    Возвращаемое значение

    Таблица карты, инициализированная с заданными функциями.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в iOS 6.0 и позже.

  • Возвращает новый объект таблицы карты, имеющий сильные ссылки к ключам и значениям.

    Объявление

    Swift

    class func strongToStrongObjectsMapTable() -> NSMapTable

    Objective C

    + (NSMapTable *)strongToStrongObjectsMapTable

    Возвращаемое значение

    Новый объект таблицы карты, имеющий сильные ссылки к ключам и значениям.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в iOS 6.0 и позже.

  • Возвращает новый объект таблицы карты, имеющий слабые ссылки на ключи и сильные ссылки к значениям.

    Объявление

    Swift

    class func weakToStrongObjectsMapTable() -> NSMapTable

    Objective C

    + (NSMapTable *)weakToStrongObjectsMapTable

    Возвращаемое значение

    Новый объект таблицы карты, имеющий слабые ссылки на ключи и сильные ссылки к значениям.

    Специальные замечания

    Использование слабых-к-сильному таблиц карты не рекомендуется. Сильные значения для обнуленных слабых ключей продолжают сохраняться, пока таблица карты не изменяет размеры себя.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в iOS 6.0 и позже.

  • Возвращает новый объект таблицы карты, имеющий сильные ссылки к ключам и слабые ссылки на значения.

    Объявление

    Swift

    class func strongToWeakObjectsMapTable() -> NSMapTable

    Objective C

    + (NSMapTable *)strongToWeakObjectsMapTable

    Возвращаемое значение

    Новый объект таблицы карты, имеющий сильные ссылки к ключам и слабые ссылки на значения.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в iOS 6.0 и позже.

  • Возвращает новый объект таблицы карты, имеющий слабые ссылки на ключи и значения.

    Объявление

    Swift

    class func weakToWeakObjectsMapTable() -> NSMapTable

    Objective C

    + (NSMapTable *)weakToWeakObjectsMapTable

    Возвращаемое значение

    Новый объект таблицы карты, имеющий слабые ссылки на ключи и значения.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в iOS 6.0 и позже.

  • Возвращает значение, связанное с данным ключом.

    Объявление

    Swift

    func objectForKey(_ aKey: AnyObject) -> AnyObject?

    Objective C

    - (id)objectForKey:(id)aKey

    Параметры

    aKey

    Ключ, для которого можно возвратить соответствующее значение.

    Возвращаемое значение

    Значение связалось с aKey, или nil если никакое значение не связано с aKey.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в iOS 6.0 и позже.

  • Возвращает объект перечислителя, позволяющий Вам доступ каждый ключ в таблице карты.

    Объявление

    Swift

    func keyEnumerator() -> NSEnumerator

    Objective C

    - (NSEnumerator *)keyEnumerator

    Возвращаемое значение

    Объект перечислителя, позволяющий Вам доступ каждый ключ в таблице карты.

    Обсуждение

    Следующий фрагмент кода иллюстрирует, как Вы могли бы использовать метод.

    • NSEnumerator *enumerator = [myMapTable keyEnumerator];
    • id value;
    • while ((value = [enumerator nextObject])) {
    • /* code that acts on the map table's keys */
    • }

    Специальные замечания

    Более эффективно использовать быстрый протокол перечисления (см. NSFastEnumeration).

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в iOS 6.0 и позже.

  • Возвращает объект перечислителя, позволяющий Вам доступ каждое значение в таблице карты.

    Объявление

    Swift

    func objectEnumerator() -> NSEnumerator

    Objective C

    - (NSEnumerator *)objectEnumerator

    Возвращаемое значение

    Объект перечислителя, позволяющий Вам доступ каждое значение в таблице карты.

    Обсуждение

    Следующий фрагмент кода иллюстрирует, как Вы могли бы использовать метод.

    • NSEnumerator *enumerator = [myMapTable objectEnumerator];
    • id value;
    • while ((value = [enumerator nextObject])) {
    • /* code that acts on the map table's values */
    • }

    Специальные замечания

    Более эффективно использовать быстрый протокол перечисления (см. NSFastEnumeration).

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в iOS 6.0 и позже.

  • count Свойство

    Число пар ключ/значение в таблице карты. (только для чтения)

    Объявление

    Swift

    var count: Int { get }

    Objective C

    @property(readonly) NSUInteger count

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в iOS 6.0 и позже.

  • Добавляет данная пара ключ/значение к таблице карты.

    Объявление

    Swift

    func setObject(_ anObject: AnyObject, forKey aKey: AnyObject)

    Objective C

    - (void)setObject:(id)anObject forKey:(id)aKey

    Параметры

    anObject

    Значение для aKey. Это значение не должно быть nil.

    aKey

    Ключ для anObject. Это значение не должно быть nil.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в iOS 6.0 и позже.

  • Удаляет данный ключ и его присваиваемое значение от таблицы карты.

    Объявление

    Swift

    func removeObjectForKey(_ aKey: AnyObject)

    Objective C

    - (void)removeObjectForKey:(id)aKey

    Параметры

    aKey

    Ключ для удаления.

    Обсуждение

    Ничего не делает если aKey не существует.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в iOS 6.0 и позже.

  • Освобождает таблицу карты от ее записей.

    Объявление

    Swift

    func removeAllObjects()

    Objective C

    - (void)removeAllObjects

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в iOS 6.0 и позже.

  • Возвращает представление словаря таблицы карты.

    Объявление

    Swift

    func dictionaryRepresentation() -> [NSObject : AnyObject]

    Objective C

    - (NSDictionary *)dictionaryRepresentation

    Возвращаемое значение

    Представление словаря таблицы карты.

    Обсуждение

    Значения таблицы карты и ключи должны соответствовать всем требованиям, указанным в setObject:forKey: в NSMutableDictionary.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в iOS 6.0 и позже.

  • keyPointerFunctions Свойство

    Указатель функционирует табличное использование карты для управления ключами. (только для чтения)

    Объявление

    Swift

    @NSCopying var keyPointerFunctions: NSPointerFunctions { get }

    Objective C

    @property(readonly, copy) NSPointerFunctions *keyPointerFunctions

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в iOS 6.0 и позже.

    См. также

    – valuePointerFunctions

  • valuePointerFunctions Свойство

    Указатель функционирует табличное использование карты для управления значениями. (только для чтения)

    Объявление

    Swift

    @NSCopying var valuePointerFunctions: NSPointerFunctions { get }

    Objective C

    @property(readonly, copy) NSPointerFunctions *valuePointerFunctions

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в iOS 6.0 и позже.

    См. также

    – keyPointerFunctions

  • Константы, используемые в качестве компонентов в битовом поле для указания поведения элементов (ключи и значения) в NSMapTable объект.

    Объявление

    Swift

    typealias NSMapTableOptions = Int

    Objective C

    enum { NSMapTableStrongMemory = 0, NSMapTableCopyIn = NSPointerFunctionsCopyIn, NSMapTableObjectPointerPersonality = NSPointerFunctionsObjectPointerPersonality, NSMapTableWeakMemory = NSPointerFunctionsWeakMemory }; typedef NSUInteger NSMapTableOptions;

    Константы

    • NSMapTableStrongMemory

      Указывает сильную ссылку от таблицы карты до ее содержания.

      Равный NSPointerFunctionsStrongMemory.

      Доступный в iOS 6.0 и позже.

    • NSMapTableCopyIn

      Использование память получает функцию, чтобы выделить и скопировать элементы на вводе (см. acquireFunction [NSPointerFunctions]).

      Равный NSPointerFunctionsCopyIn.

      Доступный в iOS 6.0 и позже.

    • NSMapTableObjectPointerPersonality

      Используйте смещенный хеш указателя и прямое равенство, описание объекта.

      Равный NSPointerFunctionsObjectPointerPersonality.

      Доступный в iOS 6.0 и позже.

    • NSMapTableWeakMemory

      Использует слабое чтение и барьеры записи, подходящие для ARC или GC. Используя NSPointerFunctionsWeakMemory ссылки на объект повернутся к NULL на последнем выпуске. Равный NSMapTableZeroingWeakMemory.

      Доступный в iOS 6.0 и позже.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в iOS 6.0 и позже.