Здравствуйте, emergen, Вы писали:
E>Добрый день! Подскажите, пожалуйста, как в С++ самым рациональным способом сделать массив из объектов одного типа, чтобы затем вызывать (работать) однотипно с одинаковыми методами объекта:
E>...
E>obj1 = MyObject();
E>obj2 = MyObject();
E>obj3 = MyObject();
E>...
E>for(i=0; i<3; i++)
E>{
E>obj[i].SetFlag();
E>}
E>В языке программирования Python данная конструкция выглядит следующим образом:
E> for obj in [obj1, obj2, obj3]:
E> obj.SetFlag()
E>А как такое сделать в С++?
используя с с++11 так
std::array<MyObject, 3> a = {MyObject(), MyObject(), MyObject()};
for(const auto& e: a)
e.SetFlag();