Udostępnij za pośrednictwem


Klasa CAtlMap

Ta klasa zapewnia metody tworzenia i zarządzania obiektu mapy.

template< 
   typename K, 
   typename V, 
   class KTraits = CElementTraits< K >, 
   class VTraits = CElementTraits< V > 
> 
class CAtlMap

Parametry

  • K
    Typ elementu kluczy.

  • V
    Wartość typu elementu.

  • KTraits
    Kod używany do skopiowania lub przeniesienia kluczowych elementów.Zobacz Klasy CElementTraits więcej informacji.

  • VTraits
    Kod używany do kopiowania lub przenoszenia elementów wartość.

Członkowie

Definicje TypeDef publicznych

Nazwa

Opis

CAtlMap::KINARGTYPE

Typ używany, kiedy klucz jest przekazywana jako argument wejściowy

CAtlMap::KOUTARGTYPE

Typ używany, kiedy klucz jest zwracany jako argument wyjściowy.

CAtlMap::VINARGTYPE

Typ używany, gdy wartość jest przekazywana jako argument wejściowy.

CAtlMap::VOUTARGTYPE

Typ używany, gdy wartość jest przekazywana jako argument wyjściowy.

Publiczne klasy

Nazwa

Opis

Klasa CAtlMap::CPair

Klasa zawierająca elementy klucz i wartość.

Członkowie CPair danych

Nazwa

Opis

CAtlMap::CPair::m_key

Członek danych przechowywania kluczowy element.

CAtlMap::CPair::m_value

Członek danych przechowywania wartości elementu.

Publiczne konstruktory

Nazwa

Opis

CAtlMap::CAtlMap

Konstruktor.

CAtlMap:: ~ CAtlMap

Destruktor.

Metody publiczne

Nazwa

Opis

CAtlMap::AssertValid

Wywołanie tej metody powoduje ASSERT, jeśli CAtlMap jest nieprawidłowa.

CAtlMap::DisableAutoRehash

Wywołanie tej metody, aby wyłączyć automatyczne Ustawiczne przypominanie o z CAtlMap obiektu.

CAtlMap::EnableAutoRehash

Wywołanie tej metody, aby włączyć automatyczne Ustawiczne przypominanie o z CAtlMap obiektu.

CAtlMap::GetAt

Wywołanie tej metody zwraca element w określonym położeniu w mapy.

CAtlMap::GetCount

Wywołanie tej metody do pobierania liczbę elementów w mapie.

CAtlMap::GetHashTableSize

Wywołanie tej metody, aby określić liczbę pojemników w tabeli mieszania mapy.

CAtlMap::GetKeyAt

Wywołanie tej metody pobrać klucz przechowywany w danym położeniu w CAtlMap obiektu.

CAtlMap::GetNext

Wywołanie tej metody uzyskiwania wskaźnika do następnego elementu pary są przechowywane w CAtlMap obiektu.

CAtlMap::GetNextAssoc

Iterowanie pobiera następnego elementu.

CAtlMap::GetNextKey

Wywołanie tej metody do pobierania Następny klucz z CAtlMap obiektu.

CAtlMap::GetNextValue

Wywołanie tej metody get następna wartość z CAtlMap obiektu.

CAtlMap::GetStartPosition

Wywołanie tej metody, aby uruchomić iteracji mapy.

CAtlMap::GetValueAt

Wywołanie tej metody do pobierania wartości przechowywane w danym położeniu w CAtlMap obiektu.

CAtlMap::InitHashTable

Wywołanie tej metody, aby zainicjować tabeli mieszania.

CAtlMap::IsEmpty

Wywołanie tej metody badania dla obiektu mapy puste.

CAtlMap::Lookup

Wywołanie tej metody, aby wyszukać klucze lub wartości w CAtlMap obiektu.

CAtlMap::Rehash

Wywołanie tej metody jest skrócenie CAtlMap obiektu.

CAtlMap::RemoveAll

Wywołanie tej metody, aby usunąć wszystkie elementy z CAtlMap obiektu.

CAtlMap::RemoveAtPos

Wywołanie tej metody, aby usunąć element w danym położeniu w CAtlMap obiektu.

CAtlMap::RemoveKey

Wywołanie tej metody, aby usunąć element z CAtlMap obiektu podany klucz.

CAtlMap::SetAt

Wywołanie tej metody, aby wstawić parę elementu do mapy.

CAtlMap::SetOptimalLoad

Wywołanie tej metody, aby ustawić optymalną obciążenia CAtlMap obiektu.

CAtlMap::SetValueAt

Wywołanie tej metody, aby zmienić wartość przechowywaną w danym położeniu w CAtlMap obiektu.

Podmioty publiczne

Nazwa

Opis

[CAtlMap::operator]

Zastępuje lub dodaje nowy element CAtlMap.

Uwagi

CAtlMapzapewnia obsługę tablicy mapowania z dowolnego typu, Zarządzanie macierzą nieuporządkowana kluczowych elementów i związanych z nimi wartości.Elementy (składające się z klucza i wartości) są przechowywane przy użyciu algorytmu mieszania, umożliwiając dużą ilość danych do efektywnego przechowywania i pobierania.

KTraits i VTraits cechujących klasy, które zawierają kod uzupełniający potrzebne, aby skopiować lub przenieść elementy są parametry.

Alternatywą dla CAtlMap jest oferowany przez CRBMap klasy.CRBMaprównież przechowuje par klucz wartość, ale wykazuje różnych parametrów.Czas, aby wstawić element, odszukać klucz lub usunąć klucz z CRBMap obiektu jest kolejność log(n), gdzie n jest liczba elementów.Dla CAtlMap, wszystkie operacje te zajmują zazwyczaj stałego czasu, chociaż najgorszych scenariuszy, zamówienia mogą być n.Dlatego w przypadku typowych CAtlMap jest szybsze.

Inne różnice między CRBMap i CAtlMap staje się widoczna po Iteracja elementów przechowywanych.W CRBMap, elementy są odwiedzane w kolejności sortowane.W CAtlMap, elementy nie są uporządkowane i zamówienia nie można wywnioskować.

Gdy niewielka liczba elementów muszą być przechowywane, należy rozważyć użycie CSimpleMap zamiast klasy.

Aby uzyskać więcej informacji, zobacz Klasy kolekcji ATL.

Wymagania

Nagłówek: atlcoll.h

Zobacz też

Koncepcje

Neon próbki

UpdatePV próbki.

Inne zasoby

Omówienie klasy ATL