4
#include <iostream>
class vec
{
public:
int arr[2];
};
int main()
{
vec a = { { 1,2 } };// works
vec b = { 1,2 };// works too ,but why ?
std::cin.get();
}
vecにはデフォルトのコンストラクタ以外のコンストラクタがありません。イニシャライザリストを直接使用して、1つの配列だけを持つ構造体をメンバとして初期化することはできますか?
しかし、このコードをコンパイルすると、なぜ私は不思議です。
http://en.cppreference.com/w/cpp/language/aggregate_initialization – Praetorian
これは、 'std :: array'も同様に機能します。 –