Имеется контейнер vector. Нужно пройтись по всем его элементам и при выполнении некоторого условия добавить или удалить элементы. При этом на каждом шаге нужно знать обо всех элементах.
Чтобы было совсем понятно, что именно я хочу получить, вот код:
for (auto obj = Organisms.begin(); obj != Organisms.end(); obj++)
{
(*obj)->eat();
(*obj)->move();
(*obj)->reproduce();
}
В функции
eat объекты могут удаляться, а в
reproduce добавляться. И во всех трех функциях нужно знать обо всех существующих объектах.