Обновление движка и новая статья (комментарии)
Это сообщение сгенерировано автоматически.
вместо кучи функций с разными параметрами удобнее был бы 1 темплейт такого типа
template<class Cons> int Get(SomeList& list, Cons& cons ) { for ( all objects ) { if ( cons( object) ) { list.push( object); } } } // применение class SomeObject { int id; public: SomeObject( int i ) : id( i) {} bool operator( TObject* obj ) { return obj->GetId( ) == id; } } SomeObject some; SomeList list; int i = Get( list, some ); if ( i > 0 ) { list[i]->DoSomething( ); }
в принципе функция Get может быть устроена по другому, но я думаю основная суть понятна...
Pushkoff
По сути да. Мысль ясна.
Тут надо бы подумать, так как сейчас подобные инструментальные функции реализованы как члены классов, которые их используют. При том вообще это как одно из архитектурных решений работает: единой написание интерфейсов у объектов движка.
Тема в архиве.