问题:我有一个对象列表,每个循环都要呈现,但我想按照它们的y位置顺序渲染它们,这些位置是可变的。使用列表迭代器排序
这里是我的表声明...
std::list<Object *> objects;
std::list<Object *>::iterator iter;
std::list<Object *>::iterator iter2;
这里是我迄今为止...
for(iter = objects.begin(); iter != objects.end(); ++iter) //goes through my objs
if((*iter)->GetID() == PLAYER || (*iter)->GetID() == ENEMY) //only part of the list
for(iter2 = iter; iter2 != objects.end(); ++iter2) //goes through the same objs
if((*iter2)->GetID() == PLAYER || (*iter2)->GetID() == ENEMY) //same as line 2
if((*iter)->GetY() > (*iter2)->GetY())
我想呈现递减的Y值顺序的对象。我想我真正的问题是我如何排序这个列表。