Megosztás:


CMapStringToString osztály

Megjegyzés:

A Microsoft Foundation Classes (MFC) könyvtár továbbra is támogatott. A továbbiakban azonban nem adunk hozzá funkciókat, és nem frissítjük a dokumentációt.

Támogatja az CString objektumok által CString kulcsolt objektumok térképeit.

Szemantika

class CMapStringToString : public CObject

Tagok

A tagfüggvények CMapStringToString a CMapStringToOb osztály tagfüggvényeihez hasonlóak. A hasonlóság miatt a CMapStringToOb tagfüggvény-specifikus referenciadokumentációt használhatja. Ha a mutatót CObject visszatérési értékként vagy "kimeneti" függvényparaméterként látja, cserélje le a mutatót a következőre char: . Ha egy mutatót CObject "bemeneti" függvényparaméterként lát, cserélje le a mutatót a következőre char:

BOOL CMapStringToString::Lookup(LPCTSTR<key>, CString&<rValue>) const;

például lefordítja a következőre:

BOOL CMapStringToOb::Lookup(const char*<key>, CObject*&<rValue>) const;

Nyilvános struktúrák

Név Description
CMapStringToString::CPair Egy kulcsértéket és a társított sztringobjektum értékét tartalmazó beágyazott struktúra.

Nyilvános konstruktorok

Név Description
CMapStringToString::CMapStringToString Konstruktor.

Nyilvános metódusok

Név Description
CMapStringToString::GetCount A térkép elemeinek számát adja vissza.
CMapStringToString::GethashTableSize Meghatározza a kivonattáblában lévő elemek aktuális számát.
CMapStringToString::GetNextAssoc Lekéri az iterálás következő elemét.
CMapStringToString::GetSize A térkép elemeinek számát adja vissza.
CMapStringToString::GetStartPosition Az első elem pozícióját adja vissza.
CMapStringToString::HashKey Kiszámítja egy adott kulcs kivonatértékét.
CMapStringToString::InitHashTable Inicializálja a kivonattáblát.
CMapStringToString::IsEmpty Az üres leképezési feltétel (elemek nélkül) tesztelése.
CMapStringToString::Keresés Üres mutatót keres a void mutatókulcs alapján. A mutató értéke, nem az entitás, amelyre mutat, a kulcs összehasonlítására szolgál.
CMapStringToString::LookupKey A megadott kulcsértékhez társított kulcsra mutató hivatkozást ad vissza.
CMapStringToString::P GetFirstAssoc A térkép első CString pontjának mutatója.
CMapStringToString::P GetNextAssoc A következőre CString mutató mutatót kap az iteráláshoz.
CMapStringToString::P Lookup Olyan mutatót ad vissza, CString amelynek értéke megegyezik a megadott értékkel.
CMapStringToString::RemoveAll Eltávolítja a térkép összes elemét.
CMapStringToString::RemoveKey Eltávolít egy kulcs által megadott elemet.
CMapStringToString::SetAt Elem beszúrása a térképre; lecserél egy meglévő elemet, ha talál egy megfelelő kulcsot.

Nyilvános operátorok

Név Description
CMapStringToString::operátor [ ] Elem beszúrása a térképbe – operátorhelyettesítés a következőhöz SetAt: .

Megjegyzések

CMapStringToString a makrót beépíti az IMPLEMENT_SERIAL elemek szerializálásának és memóriaképének támogatására. Minden elem egymás után szerializálódik, ha egy térképet egy archívumban tárol, akár a túlterhelt beszúrási ( <<) operátorral, akár a Serialize tagfüggvénnyel.

Ha egyedi CString- CString elemekből álló memóriaképre van szüksége, a memóriakép-környezet mélységét 1 vagy nagyobbra kell állítania.

CMapStringToString Az objektumok törlésekor vagy elemeinek eltávolításakor a rendszer szükség szerint eltávolítja az CString objektumokat.

További információkért CMapStringToStringlásd a Gyűjtemények című cikket.

Öröklési hierarchia

CObject

CMapStringToString

Requirements

Fejléc: afxcoll.h

CMapStringToString::CPair

Egy kulcsértéket és a társított sztringobjektum értékét tartalmazza.

Megjegyzések

Ez egy beágyazott struktúra a CMapStringToString osztályon belül.

A struktúra két mezőből áll:

  • key A kulcstípus tényleges értéke.

  • value A társított objektum értéke.

A CMapStringToString::P Lookup, CMapStringToString::P GetFirstAssoc és CMapStringToString::P GetNextAssoc visszatérési értékeinek tárolására szolgál.

Example

A használatról a CMapStringToString::P Lookup példában olvashat.

CMapStringToString::P GetFirstAssoc

A térképobjektum első bejegyzését adja vissza.

const CPair* PGetFirstAssoc() const;

CPair* PGetFirstAssoc();

Visszaadott érték

Mutató a térkép első bejegyzésére; lásd: CMapStringToString::CPair. Ha a térkép üres, az érték NULL.

Megjegyzések

Hívja meg ezt a függvényt, hogy visszaadjon egy mutatót a térképobjektum első elemének.

Example

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

Lekéri a pAssocRec által mutatott térképelemet.

const CPair *PGetNextAssoc(const CPair* pAssoc) const;

CPair *PGetNextAssoc(const CPair* pAssoc);

Paraméterek

pAssoc
Egy korábbi PGetNextAssoc vagy PGetFirstAssoc hívás által visszaadott térképbejegyzésre mutat.

Visszaadott érték

Mutató a térkép következő bejegyzésére; lásd: CMapStringToString::CPair. Ha az elem az utolsó a térképen, az érték NULL.

Megjegyzések

Hívja meg ezt a metódust a térkép összes elemének iterálásához. Kérje le az első elemet egy hívással PGetFirstAssoc , majd iterálja végig a térképen a következő hívásokkal PGetNextAssoc: .

Example

Lásd a CMapStringToString::P GetFirstAssoc példát.

CMapStringToString::P Lookup

Megkeresi az adott kulcshoz hozzárendelt értéket.

const CPair* PLookup(LPCTSTR key) const;

CPair* PLookup(LPCTSTR key);

Paraméterek

kulcs
A keresendő elem kulcsára mutató mutató.

Visszaadott érték

A megadott kulcsra mutató mutató.

Megjegyzések

Ennek a metódusnak a meghívásával megkereshet egy térképelemet egy olyan kulccsal, amely pontosan megfelel az adott kulcsnak.

Example

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);
}

Lásd még

MFC-minta COLLECT
CObject osztály
hierarchiadiagram