次の方法で共有


CMapStringToOb::operator

SetAt メンバー関数の代わりに使います。

CObject*& operator [ ](
   LPCTSTR key 
);

戻り値

CObject オブジェクトへのポインターの参照を返します。マップが空の場合、または key が範囲外の場合は、NULL を返します。

解説

この演算子は、代入ステートメントの左辺値 (l-value) に対してだけ使用します。 指定したキーの要素がマップ内にない場合、新しい要素を作成します。

マップ内にキーが見つからないこともあるので、この演算子を右辺値 (r-value) に置くことはできません。 要素を取得するには、Lookup メンバー関数を使います。

CMapStringToOb::operator [] に類似しているほかのメンバー関数を以下に示します。

Class

メンバー関数

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

使用例

すべてのコレクションの例で使われている CAge クラスのリストについては、CObList::CObList を参照してください。

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

必要条件

**ヘッダー:**afxcoll.h

参照

参照

CMapStringToOb クラス

階層図

CMapStringToOb::SetAt

CMapStringToOb::Lookup

その他の技術情報

CMapStringToOb のメンバー