【发布时间】:2015-02-03 11:11:53
【问题描述】:
我收到消息“向量迭代器不兼容”。我试着把头绕过去,但什么也没有。我以前做过。相同的代码,只是没有在接收“cWORLD* World”的类中使用。我做错了什么?
谢谢!
else if (Click[2] == true)
{
//go through objects and check collision
for (vector<cOBJECT*>::iterator it = World->ReturnWorldObjects().begin(); it != World->ReturnWorldObjects().end();)
{
//Check for collision and delete object
if (PointInRect(MouseX + offX, MouseY + offY, (*it)->getrect()) == true)
{
// delete object, delete slot, pick up next slot
delete *it;
it = World->ReturnWorldObjects().erase(it);
}
else
{ // no action, move to next
++it;
}
}//for
}//else if (Click[2] == true)
【问题讨论】:
-
如果您认为从
ReturnWorldObjects()返回的任何内容的类型很重要,那么您是对的。缩小范围并发布MCVE。
标签: c++ pointers vector iterator