>>724
なるほどだんだん分かってきた。
struct CPerson {
int m_dat1[2];
int m_dat2[3];
};
なら、古い C の時代から、確か、
CPerson person = { {1,2}, {3,4} };   // (1)
みたいに書けた。だから、
struct CMyArray {
int m_dat1[5];
};
なら、
CMyArray a = { {1,2,3,4,5} };     // (2)
と書けるのは当然、ってことだよね。それでC++14以降はさらに、
(1)の場合は、全部一列に並べて、
CPerson person = { 1, 2, 3, 4 };   //(1')
と書ける様になった。結果として、(2)も、
CMyArray a = { 1,2,3,4,5 };     // (2')
と書ける様になった。

そういうことだよね、多分。それでさらに、「=」を省略したような書き方も
できると。そういえば昔から、コンストラクタを持つ CPerson の場合に、
1. CPerson person=CPerson(・・・);
2. CPerson person(・・・);
は確か等価で引数つきのコンストラクタが呼び出されるんだった。
そして、新しい C++ では、小括弧 () を、波括弧 {} に書き換えることも
可能になったみたいな話で、
3. CPerson person=CPerson{・・・};
4. CPerson person{・・・};
みたいなことも書けるようになったのかな。