• ベストアンサー

STLでコンテナにコンテナを格納

STLを用いてコンテナにコンテナを格納する事は出来るのでしょうか。 vectorにvectorを格納したり、listにvectorを格納したりといったニーズは普通にあると思うのですがいかがでしょう。

質問者が選んだベストアンサー

  • ベストアンサー
  • i-kujou
  • ベストアンサー率50% (13/26)
回答No.1

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 のジェネリックなら >> でいいんですけどね. まあ, これはジェネリックパラメータとしてクラスしか使えないという制限によるものなんですが.

関連するQ&A

専門家に質問してみよう