Поделиться через


CMapStringToOb::operator []

Удобный суррогат для функции-члена SetAt.

CObject*& operator [ ]( 
   LPCTSTR key  
);

Возвращаемое значение

Ссылка на указатель на объект CObject; или NULL если сопоставление пустым или key выходит за пределы допустимого диапазона.

Заметки

Таким образом, его можно использовать только в левой части оператора присваивания (l- значения). Если нет элемента карты с указанным ключом, чтобы создать новый элемент.

Отсутствие число "справа" (r- значение) к этому оператору, поскольку вероятность, что ключ не может быть найден в сопоставлении. Использование функции-члена Lookup для передачи элемента.

В следующей таблице приведены другие функции-члены, которые похожи на CMapStringToOb::operator [].

Класс

Функция-член

CMapPtrToPtr

void*& operator[]( void* key );

CMapPtrToWord

WORD& operator[]( void* key );

CMapStringToPtr

void*& operator[]( LPCTSTR key );

CMapStringToString

CString& operator[]( LPCTSTR key );

CMapWordToOb

CObject*& operator[]( WORD key );

CMapWordToPtr

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

См. также

Ссылки

Класс CMapStringToOb

Диаграмма иерархии

CMapStringToOb::SetAt

CMapStringToOb::Lookup