Как получить доступ к ним по итератору, чтобы можно было удалять объект из коллекции? struct Base { virtual void doit() { cout << "Base!\n"; } virtual ~Base() { cout << "deleted...\n"; } };
struct Derived: public Base
{
void doit() override { cout << "Derived!\n"; }
};
int main(int argc, const char * argv[])
{
list <unique_ptr<Base>> v;
v.emplace_back(new Base);
v.emplace_back(new Derived);
v.emplace_back(new Base);
v.emplace_back(new Derived);
v.emplace_back(new Base);
for(auto& o: v) o->doit();
}
Как получить доступ к объектам по итератору, чтобы можно было удалять объект из коллекции?
Как заменить строчку
for(auto& o: v) o->doit();
на цикл
for (auto it = v.begin(); it != v.end(); ++it)
{
it->doit();
}
Или как мне удалить в цикле for(auto& o: v) элемент из коллекции v?
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Попытался сделать задачу из интернета на If,ElseВ итоге X выводится нормально,а Y с QNan
Этот код все делает правильно: очищает экран, и вывод с первой строки, первой позиции ячейки:
Пишу пошаговую 2D игру, где персонаж передвигается в строго заданном направлении по клеткам поляИспользую MouseListener
При компиляции Java приложения вписываются данные в MANIFESTMF файл которые потом должны использоваться при запуске приложения