共用方式為


CRBMultiMap 類別

這個類別表示使用紅色粗體二進位樹狀目錄),讓每個索引鍵可以與多個值,這個值的對應結構。

template<
   typename K,
   typename V,
   class KTraits = CElementTraits< K >,
   class VTraits = CElementTraits< V >
> class CRBMultiMap : public CRBTree< K, V, KTraits, VTraits >

參數

  • K
    按鍵字元型別。

  • V
    值項目型別。

  • KTraits
    使用的程式碼複製或移動的要素。 如需的詳細資訊請參閱 CElementTraits 類別

  • VTraits
    使用的程式碼複製或移動的項目值。

Members

1ddxd5hx.collapse_all(zh-tw,VS.110).gif公用建構函式

名稱

描述

CRBMultiMap::CRBMultiMap

建構函式。

CRBMultiMap::~CRBMultiMap

解構函式。

1ddxd5hx.collapse_all(zh-tw,VS.110).gif公用方法

名稱

描述

CRBMultiMap::FindFirstWithKey

呼叫這個方法會尋找第一個項目的位置與指定索引鍵相關聯的。

CRBMultiMap::GetNextValueWithKey

呼叫這個方法會取得與相關聯的值指定機碼,並更新位置值。

CRBMultiMap::GetNextWithKey

呼叫這個方法會取得這個項目與指定的索引鍵,並更新位置值。

CRBMultiMap::Insert

呼叫這個方法插入項目至至對應。

CRBMultiMap::RemoveKey

呼叫這個方法會移除任何特定索引鍵的索引鍵/值組的項目。

備註

CRBMultiMap 為對應的任何指定型別的支援,管理已排序的按鍵字元和值。 不同於 CRBMap 類別,每一個索引鍵可以與多個值。

項目 (包含索引鍵和值) 使用 CRBMultiMap::Insert 方法,在二進位樹狀目錄樹狀結構中,。 使用方法, CRBMultiMap::RemoveKey 項目可移除,刪除所有項目是否符合指定的索引鍵。

周遊樹狀結構允許以方法 (例如、和 CRBTree::GetHeadPositionCRBTree::GetNextCRBTree::GetNextValue。 存取可能有多個值的每個索引鍵使用 CRBMultiMap::FindFirstWithKeyCRBMultiMap::GetNextValueWithKeyCRBMultiMap::GetNextWithKey 方法。 為這個的圖例中 CRBMultiMap::CRBMultiMap 實際上請參閱範例。

KTraits 和 VTraits 參數是包含必要的所有補充程式碼複製或移動項目特性類別。

CRBMultiMapCRBTree衍生,使用紅色粗體演算法,實作二進位樹狀目錄。 CAtlMap 類別提供對 CRBMultiMapCRBMap 的選項。 當需要儲存時只能有少數項目,請考慮使用 CSimpleMap 類別。

如需各種集合類別和其功能和效能特性的更完整的討論,請參閱 ATL 集合類別。

繼承階層架構

CRBTree

CRBMultiMap

需求

Header: atlcoll.h

請參閱

參考

CRBTree 類別

CAtlMap 類別

CRBMap 類別

其他資源

ATL 類別概觀