int
たとえば、キーが で、値が の 2 次元ベクトルである C++ マップを作成したいと考えていますdouble
。
std::map<int, std::vector<vector<double>>> myMap;
それを埋めて、各キーによってマップされた 2 番目のベクトルを更新したいとします (たとえば、各要素を 2 で割ります)。そのベクトルに繰り返しアクセスするにはどうすればよいですか? 以下のステートメントの「itr->second[0]」構文は明らかに間違っています。そのアクションの正しい構文は何でしょうか?
for(std::map<in, vector<vector<double> > > itr = myMap.begin(); itr != myMap.end();++itr)
{
for(int i = 0;i < itr->second[0].size();++i)
{
itr->second[0][i] /= 2;
}
}
ありがとう、ルビ