除非我弄错了,否则应该可以通过以下方式创建一个std:array:
std::array<std::string, 2> strings = { "a", "b" };
std::array<std::string, 2> strings({ "a", "b" });
Run Code Online (Sandbox Code Playgroud)
然而,使用GCC 4.6.1我无法使其中任何一个工作.编译器简单地说:
expected primary-expression before ',' token
Run Code Online (Sandbox Code Playgroud)
然而初始化列表与std :: vector一起工作正常.那是哪个呢?我错误地认为std :: array应该接受初始化列表,还是让GNU标准C++库团队搞错了?