void erase_widget(MyGUI::VectorWidgetPtr& _mass, MyGUI::Widget* _widget) { for (MyGUI::VectorWidgetPtr::iterator iter = _mass.begin(); iter != _mass.end(); ++iter) { if (*iter == _widget) { *iter = _mass.back(); _mass.pop_back(); return; } } }