CMapStringToOb::operator []
Удобный суррогат для функции-члена SetAt.
CObject*& operator [ ](
LPCTSTR key
);
Возвращаемое значение
Ссылка на указатель на объект CObject; или NULL если сопоставление пустым или key выходит за пределы допустимого диапазона.
Заметки
Таким образом, его можно использовать только в левой части оператора присваивания (l- значения). Если нет элемента карты с указанным ключом, чтобы создать новый элемент.
Отсутствие число "справа" (r- значение) к этому оператору, поскольку вероятность, что ключ не может быть найден в сопоставлении. Использование функции-члена Lookup для передачи элемента.
В следующей таблице приведены другие функции-члены, которые похожи на CMapStringToOb::operator [].
Класс |
Функция-член |
---|---|
void*& operator[]( void* key ); |
|
WORD& operator[]( void* key ); |
|
void*& operator[]( LPCTSTR key ); |
|
CString& operator[]( LPCTSTR key ); |
|
CObject*& operator[]( WORD key ); |
|
void*& operator[]( WORD key ); |
Пример
См. перечисление CObList::CObList для класса CAge, используемого во всех примерах коллекции.
CMapStringToOb map;
map[_T("Bart")] = new CAge(13);
map[_T("Lisa")] = new CAge(11);
#ifdef _DEBUG
afxDump.SetDepth(1);
afxDump << _T("Operator [] example: ") << &map << _T("\n");
#endif
Результаты из этой программы следующим образом:
Operator [] example: A CMapStringToOb with 2 elements
[Lisa] = a CAge at $4A02 11
[Bart] = a CAge at $497E 13
Требования
Header: afxcoll.h