Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Podporuje mapy CString objektů s klíči podle CString objektů.
Syntaxe
class CMapStringToString : public CObject
Členové
Členské funkce jsou podobné členské funkce CMapStringToString třídy CMapStringToOb. Vzhledem k této podobnosti můžete použít CMapStringToOb referenční dokumentaci pro specifika členské funkce. Kdykoli uvidíte ukazatel jako návratovou CObject hodnotu nebo parametr funkce "output", nahraďte ukazatelem char. Kdykoli uvidíte CObject ukazatel jako parametr funkce "input", nahraďte ukazatelem char.
BOOL CMapStringToString::Lookup(LPCTSTR<key>, CString&<rValue>) const;
Například se přeloží na
BOOL CMapStringToOb::Lookup(const char*<key>, CObject*&<rValue>) const;
Veřejné struktury
| Název | Popis |
|---|---|
| CMapStringToString::CPair | Vnořená struktura obsahující hodnotu klíče a hodnotu přidruženého objektu řetězce. |
Veřejné konstruktory
| Název | Popis |
|---|---|
| CMapStringToString::CMapStringToString | Konstruktor |
Veřejné metody
| Název | Popis |
|---|---|
| CMapStringToString::GetCount | Vrátí počet prvků v této mapě. |
| CMapStringToString::GetHashTableSize | Určuje aktuální počet prvků v tabulce hash. |
| CMapStringToString::GetNextAssoc | Získá další prvek pro iterování. |
| CMapStringToString::GetSize | Vrátí počet prvků v této mapě. |
| CMapStringToString::GetStartPosition | Vrátí pozici prvního prvku. |
| CMapStringToString::HashKey | Vypočítá hodnotu hash zadaného klíče. |
| CMapStringToString::InitHashTable | Inicializuje tabulku hash. |
| CMapStringToString::IsEmpty | Testuje podmínku prázdné mapy (žádné prvky). |
| CMapStringToString::Lookup | Vyhledá ukazatel void na základě klíče ukazatele void. Hodnota ukazatele, nikoli entita, na kterou odkazuje, se používá pro porovnání klíčů. |
| CMapStringToString::LookupKey | Vrátí odkaz na klíč přidružený k zadané hodnotě klíče. |
| CMapStringToString::P GetFirstAssoc | Získá ukazatel na první CString v mapě. |
| CMapStringToString::P GetNextAssoc | Získá ukazatel na další CString iterace. |
| CMapStringToString::P Vyhledat | Vrátí ukazatel na CString hodnotu, jejíž hodnota odpovídá zadané hodnotě. |
| CMapStringToString::RemoveAll | Odebere všechny prvky z této mapy. |
| CMapStringToString::RemoveKey | Odebere prvek určený klíčem. |
| CMapStringToString::SetAt | Vloží prvek do mapy; nahradí existující prvek, pokud je nalezen odpovídající klíč. |
Veřejné operátory
| Název | Popis |
|---|---|
| CMapStringToString::operator [ ] | Vloží prvek do mapy – nahrazení operátoru SetAt. |
Poznámky
CMapStringToStringIMPLEMENT_SERIAL obsahuje makro pro podporu serializace a dumpingu jeho prvků. Každý prvek je serializován postupně, pokud je mapa uložena do archivu, buď s přetíženým kurzorem ( <<) operátor nebo členské Serialize funkce.
Pokud potřebujete výpis jednotlivých CString- CString prvků, musíte nastavit hloubku kontextu výpisu na hodnotu 1 nebo vyšší.
Při odstranění objektu CMapStringToString nebo při odebrání CString jeho prvků se objekty odeberou podle potřeby.
Další informace najdete CMapStringToStringv článku Kolekce.
Hierarchie dědičnosti
CMapStringToString
Požadavky
Hlavička: afxcoll.h
CMapStringToString::CPair
Obsahuje hodnotu klíče a hodnotu přidruženého objektu řetězce.
Poznámky
Toto je vnořená struktura v rámci třídy CMapStringToString.
Struktura se skládá ze dvou polí:
keySkutečná hodnota typu klíče.valueHodnota přidruženého objektu.
Slouží k uložení návratových hodnot z CMapStringToString::P Lookup, CMapStringToString::P GetFirstAssoc a CMapStringToString::P GetNextAssoc.
Příklad
Příklad použití najdete v příkladu pro CMapStringToString::P Lookup.
CMapStringToString::P GetFirstAssoc
Vrátí první položku objektu mapy.
const CPair* PGetFirstAssoc() const;
CPair* PGetFirstAssoc();
Návratová hodnota
Ukazatel na první položku v mapě; viz CMapStringToString::CPair. Pokud je mapa prázdná, hodnota je NULL.
Poznámky
Voláním této funkce vrátíte ukazatel prvního prvku v objektu mapy.
Příklad
CMapStringToString myMap;
CString myStr[4] = {_T("One"), _T("Two"), _T("Three"), _T("Four")};
CMapStringToString::CPair *pCurVal;
myMap.InitHashTable(257);
// Add 4 elements to the map.
myMap.SetAt(myStr[0], _T("Odd"));
myMap.SetAt(myStr[1], _T("Even"));
myMap.SetAt(myStr[2], _T("Odd"));
myMap.SetAt(myStr[3], _T("Even"));
pCurVal = myMap.PGetFirstAssoc();
while (pCurVal != NULL)
{
_tprintf_s(_T("Current key value at %s: %s\n"),
pCurVal->key, pCurVal->value);
pCurVal = myMap.PGetNextAssoc(pCurVal);
}
CMapStringToString::P GetNextAssoc
Načte prvek mapování, na který odkazuje pAssocRec.
const CPair *PGetNextAssoc(const CPair* pAssoc) const;
CPair *PGetNextAssoc(const CPair* pAssoc);
Parametry
Přidružení klienta
Odkazuje na položku mapy vrácenou předchozím voláním PGetNextAssoc nebo PGetFirstAssoc .
Návratová hodnota
Ukazatel na další položku v mapě; viz CMapStringToString::CPair. Pokud je prvek poslední v mapě, hodnota je NULL.
Poznámky
Voláním této metody iterujte všechny prvky v mapě. Načtěte první prvek voláním PGetFirstAssoc a pak iterujte mapou s následnými voláními PGetNextAssoc.
Příklad
Podívejte se na příklad pro CMapStringToString::P GetFirstAssoc.
CMapStringToString::P Vyhledat
Vyhledá hodnotu namapovanou na daný klíč.
const CPair* PLookup(LPCTSTR key) const;
CPair* PLookup(LPCTSTR key);
Parametry
key
Ukazatel na klíč pro prvek, který se má vyhledat.
Návratová hodnota
Ukazatel na zadaný klíč.
Poznámky
Voláním této metody vyhledejte prvek mapy s klíčem, který přesně odpovídá danému klíči.
Příklad
CMapStringToString myMap;
CString myStr[4] = {_T("One"), _T("Two"), _T("Three"), _T("Four")};
myMap.InitHashTable(257);
// Add 4 elements to the map.
myMap.SetAt(myStr[0], _T("Odd"));
myMap.SetAt(myStr[1], _T("Even"));
myMap.SetAt(myStr[2], _T("Odd"));
myMap.SetAt(myStr[3], _T("Even"));
// Print the element values with odd key values.
CMapStringToString::CPair *pCurVal;
for (int i = 0; i < 4; i += 2)
{
pCurVal = myMap.PLookup(myStr[i]);
_tprintf_s(_T("Current key value at %s: %s\n"),
pCurVal->key, pCurVal->value);
}