【发布时间】:2014-01-30 05:27:11
【问题描述】:
所以我试图迭代一个地图,它的关键是一对浮点数,它的值是浮点数的向量。我在 stackoverflow 上关注了有关如何访问键和值的不同示例,但我在使用 .first 或 .second 时遇到了问题。这是我的设置。
typedef std::pair<float, float> XYPair;
typedef std::map<XYPair, std::vector<float> > VectorsMap;
VectorsMap points;
VectorsMap::iterator iter;
//some function that spits back a VectorsMap map.
points = fileParser.parseFile();
//iterate over all vectors
for (iter = points.begin(); iter != points.end(); iter++) {
XYPair key = iter.first;
}
这是错误:
myMain.cpp: In function âint main(int, char**)â:
myMain.cpp:21: error: âstruct std::_Rb_tree_iterator<std::pair<const std::pair<float, float>, std::vector<float, std::allocator<float> > > >â has no member named âsecondâ
make: *** [myMain.o] Error 1
我之前没有使用过迭代器,所以请放慢我的步伐。
【问题讨论】: