如果我按如下方式初始化std :: array,编译器会给出一个关于缺少大括号的警告
std::array<int, 4> a = {1, 2, 3, 4};
Run Code Online (Sandbox Code Playgroud)
这解决了这个问题:
std::array<int, 4> a = {{1, 2, 3, 4}};
Run Code Online (Sandbox Code Playgroud)
这是警告信息:
missing braces around initializer for 'std::array<int, 4u>::value_type [4] {aka int [4]}' [-Wmissing-braces]
Run Code Online (Sandbox Code Playgroud)
这只是我的gcc版本中的一个错误,还是故意做的?如果是这样,为什么?