CMapStringToOb::SetAt
Das primäre Mittel, um eines Elements in einer Zuordnung einzufügen.
void SetAt(
LPCTSTR key,
CObject* newValue
);
Parameter
key
Gibt die Zeichenfolge an, die den Schlüssel des neuen Elements ist.newValue
Gibt den CObject Zeiger an, der der Wert des neuen Elements ist.
Hinweise
Zuerst wird die Schlüssel oben gesucht.Wenn der Schlüssel gefunden wird, wird der entsprechende Wert geändert; andernfalls wird ein neues Schlüssel/Wert-Element erstellt.
In der folgenden Tabelle werden andere Memberfunktionen auf, die mit CMapStringToOb::SetAt ähneln.
Klasse |
Memberfunktion |
---|---|
void SetAt( void* key, void* newValue); |
|
void SetAt( void* key, WORD newValue); |
|
void SetAt( LPCTSTR key, void* newValue); |
|
void SetAt( LPCTSTR key, LPCTSTR newValue); |
|
void SetAt( WORD key, CObject* newValue); |
|
void SetAt( WORD key, void* newValue); |
Beispiel
Siehe CObList::CObList für Listen der CAge-Klasse, die in allen Auflistungsbeispielen verwendet wird.
CMapStringToOb map;
CAge* pa;
map.SetAt(_T("Bart"), new CAge(13));
map.SetAt(_T("Lisa"), new CAge(11)); // Map contains 2
// elements.
#ifdef _DEBUG
afxDump.SetDepth(1);
afxDump << _T("before Lisa's birthday: ") << &map << _T("\n");
#endif
if (map.Lookup(_T("Lisa"), (CObject *&)pa))
{ // CAge 12 pointer replaces CAge 11 pointer.
map.SetAt(_T("Lisa"), new CAge(12));
delete pa; // Must delete CAge 11 to avoid memory leak.
}
#ifdef _DEBUG
afxDump << _T("after Lisa's birthday: ") << &map << _T("\n");
#endif
Die Ergebnisse dieses Programms sind, wie folgt:
before Lisa's birthday: A CMapStringToOb with 2 elements
[Lisa] = a CAge at $493C 11
[Bart] = a CAge at $4654 13
after Lisa's birthday: A CMapStringToOb with 2 elements
[Lisa] = a CAge at $49C0 12
[Bart] = a CAge at $4654 13
Anforderungen
Header: afxcoll.h