- ベストアンサー
STLでコンテナにコンテナを格納
STLを用いてコンテナにコンテナを格納する事は出来るのでしょうか。 vectorにvectorを格納したり、listにvectorを格納したりといったニーズは普通にあると思うのですがいかがでしょう。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
std::vector<std::list<std::map<std::string,std::vector<int> > > > v; とか普通に定義できますよ。 気をつけなければいけないのは、> を連続させてはいけないということです。 例えば std::vector<std::list<int>> と記述すると、コンパイラによっては最後の >> を operator>> と認識しようとしてコンパイルエラーになってしまいます。
その他の回答 (1)
- Tacosan
- ベストアンサー率23% (3656/15482)
回答No.2
#1 の通りなんですが, 「コンパイラによっては」だけは間違いです. 「できるだけ長いトークンを作る」ことになっていますから, コンパイラによらず >> を 1個のトークンと認識しなければなりません (だからコンパイルエラーになる). Java のジェネリックなら >> でいいんですけどね. まあ, これはジェネリックパラメータとしてクラスしか使えないという制限によるものなんですが.