CMapStringToString Sınıfı
Nesneler tarafından CString
anahtarlanan nesnelerin haritalarını CString
destekler.
Sözdizimi
class CMapStringToString : public CObject
Üyeler
öğesinin CMapStringToString
üye işlevleri, CMapStringToOb sınıfının üye işlevlerine benzer. Bu benzerlik nedeniyle, üye işlevi özellikleri için başvuru belgelerini kullanabilirsiniz CMapStringToOb
. bir işaretçiyi dönüş değeri veya "output" işlev parametresi olarak gördüğünüz CObject
her yerde, işaretçiyi ile char
değiştirin. bir CObject
işaretçiyi "input" işlev parametresi olarak gördüğünüz her yerde, işaretçiyi olarak char
değiştirin.
BOOL CMapStringToString::Lookup(LPCTSTR<key>, CString&<rValue>) const;
örneğin,
BOOL CMapStringToOb::Lookup(const char*<key>, CObject*&<rValue>) const;
Genel Yapılar
Ad | Tanım |
---|---|
CMapStringToString::CPair | Bir anahtar değeri ve ilişkili dize nesnesinin değerini içeren iç içe yerleştirilmiş bir yapı. |
Ortak Oluşturucular
Ad | Tanım |
---|---|
CMapStringToString::CMapStringToString | Oluşturucu. |
Genel Yöntemler
Ad | Tanım |
---|---|
CMapStringToString::GetCount | Bu haritadaki öğe sayısını döndürür. |
CMapStringToString::GetHashTableSize | Karma tablodaki geçerli öğe sayısını belirler. |
CMapStringToString::GetNextAssoc | Yineleme için sonraki öğeyi alır. |
CMapStringToString::GetSize | Bu haritadaki öğe sayısını döndürür. |
CMapStringToString::GetStartPosition | İlk öğenin konumunu döndürür. |
CMapStringToString::HashKey | Belirtilen anahtarın karma değerini hesaplar. |
CMapStringToString::InitHashTable | Karma tabloyu başlatır. |
CMapStringToString::IsEmpty | Boş eşleme koşulu (öğe yok) için testler. |
CMapStringToString::Lookup | Void işaretçisi tuşuna göre bir void işaretçisi arar. İşaretçi değeri, işaret edilen varlık değil, anahtar karşılaştırması için kullanılır. |
CMapStringToString::LookupKey | Belirtilen anahtar değeriyle ilişkili anahtara başvuru döndürür. |
CMapStringToString::P GetFirstAssoc | Haritadaki ilk CString işaretçiyi alır. |
CMapStringToString::P GetNextAssoc | Yineleme için bir sonraki CString işaretçiyi alır. |
CMapStringToString::P Lookup | Değeri belirtilen değerle eşleşen bir CString işaretçi döndürür. |
CMapStringToString::RemoveAll | Bu haritadan tüm öğeleri kaldırır. |
CMapStringToString::RemoveKey | Bir anahtar tarafından belirtilen bir öğeyi kaldırır. |
CMapStringToString::SetAt | Eşlem içine bir öğe ekler; eşleşen bir anahtar bulunursa mevcut bir öğeyi değiştirir. |
Ortak İşleçler
Ad | Tanım |
---|---|
CMapStringToString::operator [ ] | Eşlemeye bir öğe ekler— için SetAt işleç değişimi. |
Açıklamalar
CMapStringToString
öğelerinin seri hale getirilmesini IMPLEMENT_SERIAL
ve dökümünün atılması için makroyu birleştirir. Eşlem bir arşive depolandığında, aşırı yüklenmiş ekleme ( <<) işleciyle veya üye işleviyle Serialize
her öğe sırayla seri hale getirilir.
Tek tek CString
- CString
öğelerin dökümünü almanız gerekiyorsa döküm bağlamının derinliğini 1 veya daha büyük olarak ayarlamanız gerekir.
Bir CMapStringToString
nesne silindiğinde veya öğeleri kaldırıldığında, CString
nesneler uygun şekilde kaldırılır.
hakkında CMapStringToString
daha fazla bilgi için Koleksiyonlar makalesine bakın.
Devralma Hiyerarşisi
CMapStringToString
Gereksinimler
Üst bilgi: afxcoll.h
CMapStringToString::CPair
Bir anahtar değeri ve ilişkili dize nesnesinin değerini içerir.
Açıklamalar
Bu, CMapStringToString sınıfı içinde iç içe geçmiş bir yapıdır.
Yapı iki alandan oluşur:
key
Anahtar türünün gerçek değeri.value
İlişkili nesnenin değeri.
CMapStringToString::P Lookup, CMapStringToString::P GetFirstAssoc ve CMapStringToString::P GetNextAssoc'tan döndürülen değerleri depolamak için kullanılır.
Örnek
Kullanım örneği için CMapStringToString::P Lookup örneğine bakın.
CMapStringToString::P GetFirstAssoc
Eşleme nesnesinin ilk girişini döndürür.
const CPair* PGetFirstAssoc() const;
CPair* PGetFirstAssoc();
İade Değeri
Haritadaki ilk girişin işaretçisi; bkz . CMapStringToString::CPair. Eşleme boşsa, değer NULL olur.
Açıklamalar
Eşleme nesnesindeki ilk öğeyi bir işaretçi döndürmek için bu işlevi çağırın.
Örnek
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
pAssocRec tarafından işaret edilen eşleme öğesini alır.
const CPair *PGetNextAssoc(const CPair* pAssoc) const;
CPair *PGetNextAssoc(const CPair* pAssoc);
Parametreler
pAssoc
Önceki bir PGetNextAssoc veya PGetFirstAssoc çağrısı tarafından döndürülen bir eşleme girdisine işaret eder.
İade Değeri
Haritadaki bir sonraki girdinin işaretçisi; bkz . CMapStringToString::CPair. öğesi eşlemedeki son öğeyse, değer NULL olur.
Açıklamalar
Eşlemedeki tüm öğeleri yinelemek için bu yöntemi çağırın. çağrısı PGetFirstAssoc
olan ilk öğeyi alın ve ardından öğesine yapılan ardışık çağrılarla PGetNextAssoc
eşlemede yineleyin.
Örnek
CMapStringToString::P GetFirstAssoc örneğine bakın.
CMapStringToString::P Lookup
Belirli bir anahtara eşlenen değeri arar.
const CPair* PLookup(LPCTSTR key) const;
CPair* PLookup(LPCTSTR key);
Parametreler
key
Aranacak öğenin anahtarına yönelik bir işaretçi.
İade Değeri
Belirtilen anahtarın işaretçisi.
Açıklamalar
Verilen anahtarla tam olarak eşleşen bir anahtara sahip bir eşleme öğesi aramak için bu yöntemi çağırın.
Örnek
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);
}