在这些片段中,哪一个是最好的(性能)?
1)
for(list<Enemy*>::iterator iter = enemies.begin(); iter != enemies.end(); iter ++)
(*iter)->prepare(time_elapsed);
2)
for_each(enemies.begin(), enemies.end(), [time_elapsed] (Enemy *e) {e->prepare(time_elapsed);});
3)
for_each(enemies.begin(), enemies.end(), bind2nd(mem_fun1<void, Enemy, GLfloat>(&Enemy::prepare), time_elapsed));