4
キーが一意でないところにペア(キーと値)を保存するコレクション方法は、技術的には私の考えではありません。私が持っている私のプログラムでC++ Collections:構造体のようなマップを作成する方法
どこか:
typedef struct
{
int nKey;
string strFormType;
} KeyPair;
その後、私は、この構造体を使用して、ベクター内のオブジェクトを格納します。
vector<KeyPair> vKeyList;
KeyPair MenuOne;
MenuOne.nKey = 1;
MenuOne.strFormType = "Window";
vKeyList.push_back(MenuOne);
MenuOne.nKey = 0;
MenuOne.strFormType = "Window2";
vKeyList.push_back(MenuOne);
MenuOne.nKey = 1;
MenuOne.strFormType = "WindowC";
vKeyList.push_back(MenuOne);
これは基本的にオブジェクトをベクトルに格納する方法です。私の問題は、私が100のKeyPairsのように保管するならば、私はループでそれをやっているだけで、ストレージからKeyPairsを読み込み、ベクトルをpush_backする必要があります。あなたは一意のキーを持っている必要があるため
KEY WINDOW
1 Window
0 Window2
1 WindowC
3 Windowfoo
1 Window
and so on...
私はマップに格納することができませんでした:私はこれらの鍵ペアを保存する必要がある場合はどう
。私が持っているKeyPairsのキーはユニークではありません。なにか提案を?イグナシオバスケス - エイブラムスなどmultimap`
使用は '提案、またはソートベクトルを維持し、' lower_bound'を使用しています。 – dalle