草庐IT

timedEvents

全部标签

c++ - 在为每个执行一次时从 std::vector 中删除?

迭代的正确方法是使用迭代器。但是,我认为通过删除,迭代器无效。基本上我想做的是:for(iteratorit=begin;it!=end;++it){if(it->somecondition()){eraseit}}如果没有v[i]方法,我怎么能做到这一点?谢谢structRemoveTimedEvent{booloperator()(constAguiTimedEvent&pX,AguiWidgetBase*widget)const{returnpX.getCaller()==widget;}};voidAguiWidgetContainer::clearTimedEvents(Ag

c++ - 在为每个执行一次时从 std::vector 中删除?

迭代的正确方法是使用迭代器。但是,我认为通过删除,迭代器无效。基本上我想做的是:for(iteratorit=begin;it!=end;++it){if(it->somecondition()){eraseit}}如果没有v[i]方法,我怎么能做到这一点?谢谢structRemoveTimedEvent{booloperator()(constAguiTimedEvent&pX,AguiWidgetBase*widget)const{returnpX.getCaller()==widget;}};voidAguiWidgetContainer::clearTimedEvents(Ag