私は次のように繰り返すマップを持っています:
std::map<unsigned int, GameObject *>::iterator itr = _gameObjects.begin();
while (itr != _gameObjects.end())
{
itr->second->Update();
itr++;
}
Update()は、要素をマップに挿入したり、マップから1つ削除したりする場合がありますが、必ずしも2つのうちのいずれかを実行するわけではありません。それは明らかにそのようには機能しません。それを行う方法はありますか?