相关疑难解决方法(0)

C++ 11:正确的std :: array初始化?

如果我按如下方式初始化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版本中的一个错误,还是故意做的?如果是这样,为什么?

c++ arrays initialization c++11 c++14

60
推荐指数
4
解决办法
6万
查看次数

标签 统计

arrays ×1

c++ ×1

c++11 ×1

c++14 ×1

initialization ×1