我正在尝试构建一个将字符串映射到无符号整数向量的映射。我构建这张地图的方式如下:
void PixelP1ROCDACSettings::getDACs(map<string,vector<unsigned int>>& dacs) const
{
dacs.clear();
dacs.insert(pair<string, vector<unsigned int> > (k_DACName_Vdd, make_vector(Vdd_, k_DACAddress_Vdd)));
dacs.insert(pair<string, vector<unsigned int> > (k_DACName_Vana,make_vector(Vana_, k_DACAddress_Vana)));
...
}
make_vector的定义如下:
std::vector<unsigned int> make_vector(unsigned int DACValue,
unsigned int DACAddress) const ;
我的问题是:
1)我想访问我的向量中的每个单独的值,我试过,
dacs[key][index]
但这似乎不起作用。有没有特殊的语法来做到这一点?
2)此外,我想迭代我的地图,我该怎么做?
提前致谢。
答案 0 :(得分:0)
如果您使用的是c ++ 11,则可以使用
进行迭代Item
dacs [key] [index]是访问按键映射的向量中索引元素的正确方法。