Как проитерироваться по локальным переменным?
У меня есть 4 локальных переменных-указателя разных типов A*, B*, C*, D*, но которые наследуются от одного типа A. Надо сделать одно и то же действие-функцию A::do_it() над каждым объектом. Чтобы не писать одинаковый код 4 раза, хочу сделать цикл по этим объектам такого вида:
for (A* obj : {a, b, c, d}) {
obj->do_it();
}
Какой контейнер правильно применять, чтобы работало и не было лишних копий?
Ответы (1 шт):
Автор решения: karmik
→ Ссылка
Для QT классов не получится сделать. Надо явно писать
for(A* x: initializer_list<A*>({a,b,c,d}))