CRBMultiMap::CRBMultiMap

更新 : 2007 年 11 月

コンストラクタです。

explicit CRBMultiMap(
   size_t nBlockSize = 10 
) throw( );

パラメータ

  • nBlockSize
    ブロック サイズ。

解説

パラメータ nBlockSize は、新しい要素を要求するときに割り当てられるメモリ量です。ブロック サイズを大きくすると、メモリ割り当てルーチンの呼び出しは少なくなりますが、使用するリソースは多くなります。既定では、1 回に 10 要素分の領域が割り当てられます。

ほかの使用可能なメソッドについては、CRBTree 基本クラスに関するドキュメントを参照してください。

使用例

// Define a multimap object which has an integer
// key, a double value, and a block size of 5
CRBMultiMap<int, double> myMap(5);

// Add some key/values. Notice how three
// different values are associated with 
// one key. In a CRBMap object, the values
// would simply overwrite each other.
myMap.Insert(0, 1.1);
myMap.Insert(0, 1.2);
myMap.Insert(0, 1.3);
myMap.Insert(1, 2.1);

// Look up a key and iterate through
// all associated values

double v;
POSITION myPos = myMap.FindFirstWithKey(0);

while (myPos != NULL)
{
   v = myMap.GetNextValueWithKey(myPos,0);
   // As the loop iterates, v 
   // contains the values 1.3, 1.2, 1.1
}

// Remove all of the values associated with that key
size_t i = myMap.RemoveKey(0);

// Confirm all three values were deleted
ATLASSERT(i == 3);

必要条件

ヘッダー : atlcoll.h

参照

参照

CRBMultiMap クラス

CRBMultiMap::~CRBMultiMap

その他の技術情報

CRBMultiMap のメンバ