1

のコンテナがありstd::map<string,std::map<string,int>>ます。

  1. このようなコンテナにデータを挿入するにはどうすればよいですか? 内部マップを追加変数として持つ必要がありますか? コードは、MSVC 2010 と XCode 4.2 (Snow Leopard) の両方でコンパイルする必要があります。

  2. Snow Leopard (10.6) の XCode 4.2 はそのようなコンテナをサポートしていますか?

4

2 に答える 2

3

オーバーロード[]された演算子を使用するだけで完了です。

std::map<string,std::map<string,int> > data;
data["foo"]["bar"] = 10;

はい、Xcode 4.2はそれらをサポートしています。私は個人的にOSXで問題なく使用しました。

于 2012-11-27T04:34:03.343 に答える
0

簡単な答えとして、一時的なマップが必要です。

std::map<string, int> tempMap;
std::string tempString;

次に、これらを設定したら、上記のマップに挿入する必要があります。

tempMap.insert(std::pair<string, std::map<string, int>>(tempString, tempMap))

次に、ジャックの回答のようにアクセスできます。

于 2012-11-27T04:36:00.417 に答える