Sdílet prostřednictvím


Třídy pole, seznamu a mapy

Pro zpracování souhrnných údajů, knihovna tříd poskytuje skupina kolekce tříd – polí, seznamy a mapy – který může pojmout celou řadu předdefinovaných typů a objektu.Dynamicky mají velikost kolekce.Tyto třídy lze použít v libovolné aplikaci, zda vytvořených pro systém Windows, nebo ne.Jsou však nejvhodnější pro implementaci datových struktur, které definují své třídy dokumentu v rámci aplikace.Specializované kolekce tříd lze snadno odvodit z těchto, nebo je lze vytvořit podle šablony třídy.Další informace o těchto přístupů naleznete v článku kolekce.Seznam tříd kolekcí šablony naleznete v článku Tříd šablon pro pole, seznamy a mapy.

Pole jsou jednorozměrné datových struktur, které jsou v paměti uloženy souvisle.Vzhledem k tomu, že jakýkoli daný prvek adresa paměti lze vypočítat index prvku vynásobí velikost prvku a přidáním výsledek do pole Základní adresa podporují velmi rychle náhodný přístup.Ale jsou velmi nákladné, pokud jste do pole vložit prvky, od celé pole poslední prvek vložený má přesunuty, aby byla místnost pro prvek, který chcete vložit pole.Matice můžete zvětšit a zmenšit podle potřeby.

Seznamy jsou podobné polím, ale jsou uloženy velmi odlišně.Každý prvek seznamu obsahuje také odkaz na předchozí a další prvky, takže dvakrát propojený seznam.Je velmi rychle přidat nebo odstranit položky, protože to zahrnuje pouze změna několik ukazatelů.Vyhledávání seznamu však může být nákladné, protože všechna hledání je třeba začít od jedné z konce seznamu.

Mapy se týkají hodnotu klíče data hodnotu.Například klíč mapy může být řetězec a data ukazatele do seznamu.Bych si na mapě vám určitý řetězec přidružený ukazatel.Mapování vyhledávání jsou rychlé, protože mapy pomocí tabulky hash hodnot klíče vyhledávání.Přidávání a odstraňování položek je také rychlé.Mapy jsou často používány s jiných datových struktur jako pomocné indexy.Knihovna MFC používá zvláštní druh mapy jen mapu zpráv mapování zpráv systému Windows na ukazatel na funkci obslužné rutiny pro tuto zprávu.

Viz také

Koncepty

Přehled knihovny tříd