std::vector< std::vector<coords> >::iterator iter;
for(iter = characters.begin(); iter != characters.end(); iter++)
{
std::vector<coords>* cha = iter; // doesn't work.
}
// does work.
std::vector<coords>* character = &characters.at(0);
coords* first = &character->at(0);
而我不明白爲什麼。它不應該是一個指向容器應該「包含」的類型元素的指針嗎?通過迭代器訪問另一個矢量內的矢量元素?
任何人都願意闡明這一點?
通過不工作我的意思是:
error C2440: 'initializing' : cannot convert from 'std::_Vector_iterator<_Ty,_Alloc>' to 'std::vector<_Ty> *'
不使一大堆的道理給我。