Sdílet prostřednictvím


Třída CAtlMap

Tato třída poskytuje metody pro vytváření a správu objekt mapy.

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

Parametry

  • K
    Typ klíče prvku.

  • V
    Typ prvku hodnotu.

  • KTraits
    Kód používaný zkopírovat nebo přesunout hlavní prvky.Viz CElementTraits třídy další podrobnosti.

  • VTraits
    Kód používaný zkopírovat nebo přesunout prvky hodnotu.

Členy

Funkce TypeDef veřejné

Název

Description

CAtlMap::KINARGTYPE

Typ použitého pro klíč je předán jako vstupní argument

CAtlMap::KOUTARGTYPE

Typ použitý při vrácení klíče jako argument výstupu.

CAtlMap::VINARGTYPE

Typ použitý při hodnoty je předán jako vstupní argument.

CAtlMap::VOUTARGTYPE

Typ použitý při hodnoty je předán jako argument výstupu.

Veřejné třídy

Název

Description

Třída CAtlMap::CPair

Třída obsahující prvky klíče a hodnoty.

CPair datové členy

Název

Description

CAtlMap::CPair::m_key

Datový člen ukládání klíčovým prvkem.

CAtlMap::CPair::m_value

Datový člen ukládání prvku hodnota.

Veřejné konstruktory

Název

Description

CAtlMap::CAtlMap

Konstruktor.

CAtlMap:: ~ CAtlMap

Destruktoru.

Veřejné metody

Název

Description

CAtlMap::AssertValid

Volání této metody způsobit neplatného výrazu, pokud CAtlMap není platný.

CAtlMap::DisableAutoRehash

Volání této metody zakázat automatické rehashing z CAtlMap objektu.

CAtlMap::EnableAutoRehash

Tato metoda umožňuje automatické rehashing z volání CAtlMap objektu.

CAtlMap::GetAt

Volání této metody vrátit prvek na určené pozici na mapě.

CAtlMap::GetCount

Volání této metody k načtení, počet prvků v mapování.

CAtlMap::GetHashTableSize

Volání této metody určit počet přihrádek v tabulce na mapě algoritmu hash.

CAtlMap::GetKeyAt

Volání této metody načíst klíč uložený v dané poloze CAtlMap objektu.

CAtlMap::GetNext

Volání této metody získání ukazatele na další prvek dvojice uložené v CAtlMap objektu.

CAtlMap::GetNextAssoc

Iterace získá další prvek.

CAtlMap::GetNextKey

Tato metoda načíst další klíč z volání CAtlMap objektu.

CAtlMap::GetNextValue

Volání této metody hodnotou z CAtlMap objektu.

CAtlMap::GetStartPosition

Volání této metody iterace mapa spustit.

CAtlMap::GetValueAt

Volání této metody načíst hodnotu uloženou v dané poloze CAtlMap objektu.

CAtlMap::InitHashTable

Tuto metodu inicializace tabulky hash volejte.

CAtlMap::IsEmpty

Volání této metody testování objektu prázdný mapy.

CAtlMap::Lookup

Tuto metodu k vyhledání klíče nebo hodnoty v volat CAtlMap objektu.

CAtlMap::Rehash

Volání této metody rehash CAtlMap objektu.

CAtlMap::RemoveAll

Tato metoda odebrat všechny prvky z volání CAtlMap objektu.

CAtlMap::RemoveAtPos

Volání této metody odebrat prvek v dané poloze CAtlMap objektu.

CAtlMap::RemoveKey

Volání této metody odstranit element CAtlMap objektu, které jsou uvedeny v klíči.

CAtlMap::SetAt

Volání této metody dvojici prvku vložit do mapy.

CAtlMap::SetOptimalLoad

Volání této metody nastavení optimálního zatížení CAtlMap objektu.

CAtlMap::SetValueAt

Volání této metody změnit hodnotu uloženou v dané poloze CAtlMap objektu.

Veřejné operátory

Název

Description

[CAtlMap::operator]

Nahradí nebo přidá nový prvek CAtlMap .

Poznámky

CAtlMapposkytuje podporu pro mapování pole daného typu, Správa neuspořádané klíčových prvků a jejich přidružené hodnoty pole.Prvky (sestávající z klíče a hodnoty) jsou uloženy pomocí algoritmu hash, umožňující efektivní uložení a načtení dat velké množství.

KTraits a VTraits jsou třídy širokých, které obsahují jakékoli náhradní kód zkopírovat nebo přesunout prvky potřebné parametry.

Alternativa k CAtlMap je nabízené CRBMap třídy.CRBMaptaké uloží páry klíč hodnota, ale vykazuje různé charakteristiky.Doba vložení položky, vyhledejte klíč nebo odstranit klíče z CRBMap je objekt v pořadí log(n), kde n je počet prvků.Pro CAtlMap , všechny tyto operace obvykle časově konstantní, ačkoli nejhorších scénářů může být pořadí n.Proto v případě typické CAtlMap je rychlejší.

Další rozdíl mezi CRBMap a CAtlMap zřejmé při iterace uložených prvků.V CRBMap , prvky navštívené v seřazeném pořadí.V CAtlMap , prvky nejsou uspořádány a bez pořadí lze odvodit.

Při malý počet prvků je nutné uložit, zvažte použití CSimpleMap namísto třídy.

Další informace naleznete v tématu Třídy ATL kolekce.

Požadavky

Záhlaví: atlcoll.h

Viz také

Koncepty

Výběr vzorku

UpdatePV vzorku

Další zdroje

Přehled třídy ATL