Initializer list in a range for loop
问题 I have objects of different types derived from a single super-type. I wonder if there are any disadvantages in using std::initializer list in a range for loop like this: for(auto object: std::initializer_list<Object *>{object1, object2, object3}) { } Is it completely OK and efficient or would it be better to use an array? To me the std::array solution seems to be more restrictive for the compiler and there is a disadvantage of explicitly stating the size: for(auto object: std::array<Object*,