CAtlMap Class
Этот класс содержит методы для создания и управления объекта сопоставления.
template<
typename K,
typename V,
class KTraits = CElementTraits< K >,
class VTraits = CElementTraits< V >
>
class CAtlMap
Параметры
K
Тип ключевого положения.V
Тип значения.KTraits
Код, используемый для копирования или перемещения ключевые элементы. Дополнительные сведения см. в разделе класс CElementTraits.VTraits
Код, используемый для копирования или перемещения элементов значения.
Члены
Открытые определения типов
Имя |
Описание |
---|---|
Тип используемого, когда ключ будет передан в качестве входного аргумента |
|
Тип используемого, когда ключ будет возвращен как выходной аргумент. |
|
Тип используемого, когда будет передано значение в качестве входного аргумента. |
|
Тип используемого при получении передается значение в качестве аргумента вывода. |
Общие классы
Имя |
Описание |
---|---|
Класс, содержащий элементы ключа и значения. |
Элементы данных CPair
Имя |
Описание |
---|---|
Элемент данных хранения является ключевым элементом. |
|
Элемент данных хранения элемент значения. |
Открытые конструкторы
Имя |
Описание |
---|---|
Конструктор. |
|
Деструктор. |
Открытые методы
Имя |
Описание |
---|---|
Вызовите этот метод, чтобы вызвать ASSERT, если CAtlMap недопустимо. |
|
Вызывайте этот метод для отключения автоматического повторного хэширования объекта CAtlMap. |
|
Этот метод вызывается для включения автоматического повторного хэширования объекта CAtlMap. |
|
Вызовите этот метод, чтобы вернуть элемент в указанной позиции в сопоставлении. |
|
Вызовите этот метод, чтобы получить количество элементов в сопоставлении. |
|
Вызовите этот метод, чтобы указать количество позиций в хэш-таблице сопоставления. |
|
Вызовите этот метод, чтобы извлечь ключ, хранящийся в заданной позиции в объекте CAtlMap. |
|
Этот метод вызывается для получения указателя на следующие сопоставления элемента, хранящегося в объекте CAtlMap. |
|
Возвращает следующий элемент для итерации. |
|
Вызовите этот метод, чтобы получить следующий ключ из объекта CAtlMap. |
|
Вызовите этот метод, чтобы получить следующее значение из объекта CAtlMap. |
|
Вызовите этот метод, чтобы начать итерацию сопоставления. |
|
Вызовите этот метод, чтобы извлечь значение, сохраненное в заданной позиции в объекте CAtlMap. |
|
Этот метод вызывается для инициализации хэш-таблицы. |
|
Вызывайте этот метод для проверки на наличие объекта пустого сопоставления. |
|
Вызовите этот метод, чтобы найти ключи и значения в объекте CAtlMap. |
|
Этот метод вызывается в перефразированию объектом CAtlMap. |
|
Вызовите этот метод, чтобы удалить все элементы из объекта CAtlMap. |
|
Вызовите этот метод, чтобы удалить элемент на заданной позиции в объекте CAtlMap. |
|
Вызовите этот метод, чтобы удалить элемент из объекта CAtlMap заданный ключ. |
|
Вызовите этот метод, чтобы вставить пару элемента в сопоставление. |
|
Вызовите этот метод, чтобы задать оптимальную загрузку объекта CAtlMap. |
|
Вызовите этот метод, чтобы изменить значение, хранящееся в заданной позиции в объекте CAtlMap. |
Открытые операторы
Имя |
Описание |
---|---|
Заменяет или добавить новый элемент в CAtlMap. |
Заметки
CAtlMap обеспечивает поддержку массивов любого заданного типа, сопоставления для управления неупорядоченными массив ключевых положений и связанных с ними значений. Элементы (состоящ из ключа и значения) хранятся используя алгоритм хэширования, при включении больших объемов эффективно для хранения и восстановимых данных.
Параметры KTraits и признаков VTraits классы, содержащие любой дополнительный код необходимо копировать или перемещать элементы.
Альтернативой CAtlMap предложена классом CRBMap. CRBMap ключ магазинов также ключ-значение, но отображаются другие характеристики производительности. Время, затраченное для вставки элемента, поиска или удаления ключа из объекта CRBMap порядка log(n), где n - количество элементов. Для CAtlMap, все эти операции обычно занимают постоянное время, хотя наихудшие варианты развития событий могут оказаться n. Поэтому в обычном случае CAtlMap быстрее.
Других различий между CRBMap и CAtlMap будет ясным повторяя через сохраненные элементы. В CRBMap элементы посещены в порядке сортировки. В CAtlMap элементы не упорядочиваются, и порядок может быть выведен.
Если несколько элементов должны храниться рекомендуется использовать класс CSimpleMap.
Дополнительные сведения см. в разделе Классы коллекций библиотеку ATL.
Требования
Header: atlcoll.h