I don't want to pollute the thread in For Beginners with that discussion, but the answer is yes, even without C++11 initialiser lists:
#include struct A { A &operator = (int i) { std::cout << "A = " << i << std::flush; return *this; } A &operator , (int i) { std::cout << ", " << i << std::flush; return *this; }};int main() { A a; a = 10, 20, 30; std::cout << std::endl;}
Should you ever do this? Probably not. Though I'm guessing one of Boost's container libraries is doing exactly this.
(Source)