std::initializer_list の追加にともない
コンストラクタと初期化子リストの初期化構文が一様になる
以下のようなクラスがあった場合
class hoge { int x_; int y_; public: hoge(int x, int y) : x_(x), y_(y) {} };
以下の2行は同じ意味になる
hoge h(3, 4); hoge h{3, 4};
引数
void foo(const hoge&){} foo({3, 4});
戻り値
hoge something() { return {3, 4}; }
std::initializer_list を引数にとるコンストラクタが優先的に呼ばれる
N2532 Uniform initialization design choices (Revision 2)