std::arrayの初期化
g++(4.7.2) だとコンパイルできないけど clang++(3.3) だとできる.
g++ の場合は,
array<int, 3> a((array<int, 3>){1, 2, 3});
みたいにキャストで明示しないといけないっぽい(C++スタイルでする場合には何使えばいいんだろ?).
たぶん g++ の方は explicit ついたコンストラクタが生成されてるのかな.
cppreference.com 二重で囲むべきだったらしい.
g++(4.7.2) だとコンパイルできないけど clang++(3.3) だとできる.
g++ の場合は,
array<int, 3> a((array<int, 3>){1, 2, 3});
みたいにキャストで明示しないといけないっぽい(C++スタイルでする場合には何使えばいいんだろ?).
たぶん g++ の方は explicit ついたコンストラクタが生成されてるのかな.
cppreference.com 二重で囲むべきだったらしい.