C++14(17) になっても Non-static data member initializers に auto が使えないのがつらい、という話です。 [Non-static data member initializers とは] Non-static data member initializers とは C++11 から追加された言語機能の一つで クラスのメンバ変数を定義する時に初期値を設定できる という機能です。 C++03 では以下のようにコンストラクタでメンバ変数の初期値を設定することが出来ました。 struct X{ // コンストラクタ時に初期値を設定する X() : value(0) , value2(3.14f){} int value; float value2; }; 一方、C++11 以降ではメンバ変数定義時に直截値を代入することが出来ます。 struct X