Я использую multimap для хранения некоторых данных с использованием openframeworks. Я могу создать мультимап, но когда я пытаюсь распечатать данные в нем, я могу распечатать адрес памяти и не получить значение.не удалось распечатать значение из multimap
ссылка (раздел "Хранение объектов в карте"): http://openframeworks.cc/ofBook/chapters/stl_map.html
.h файл:
class xyPos {
public:
float x, y;
xyPos(float xPos, float yPos) {
x = xPos;
y = yPos;
}
//return ofVec2f(x, y);
};
static multimap<string, xyPos> posMap;
static multimap<string, xyPos>::iterator xyMapIterator;
.cpp файл:
for(int i = 0; i < 10; i ++) {
for(int j = 0; j < 10; j ++) {
posMap.insert(make_pair("null", xyPos(i, j));
}
}
я также пытался:
for(int i = 0; i < 10; i ++) {
for(int j = 0; j < 10; j ++) {
xyPos *p = new xyPos(i, j);
xyMap.insert(make_pair("null", *p);
}
}
cout << "xyMap:\n";
for(xyMapIterator = xyMap.begin(); xyMapIterator != xyMap.end(); ++ xyMapIterator) {
cout << (*xyMapIterator).first << " => " << (*xyMapIterator).second << "\n";
} //will only compile with &(*xyMapIterator).second so i only have ["null", memory address] in the output
Cut вниз с использованием [mcve] и обнаружить, что это не имеет абсолютно ничего общего с 'multimap' или итерации. – juanchopanza