>>12
それinitializer_listに6っこ以上与えたら実行時のアクセス違反になる

>>4
C++11以降ならstd::array使うべき
そうすれば普通に書ける

class A{
std::array<int,2> a;
public:
A(const std::array<int,2> &b):a(b)
{
}
};