Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/128.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 将模板2D std:array初始化为0的最快方法_C++_Arrays_Templates_Stl_Initialization - Fatal编程技术网

C++ 将模板2D std:array初始化为0的最快方法

C++ 将模板2D std:array初始化为0的最快方法,c++,arrays,templates,stl,initialization,C++,Arrays,Templates,Stl,Initialization,我有一个模板化的2d数组std::arraymy_array,我想在程序中的不同时间将它们全部设置为零。似乎我可以使用std::array::fill但是 my_array.fill(0); 它不起作用。如何正确填充二维数组?我建议使用 my_array.fill({}); 参数中的{}创建一个初始化为零的std::array,用于填充my_array的内容。更改此选项: my_array.fill(0); 为此: my_array.fill({}); 哪个默认值初始化数组的内容。我倾向

我有一个模板化的2d数组
std::arraymy_array
,我想在程序中的不同时间将它们全部设置为零。似乎我可以使用
std::array::fill
但是

my_array.fill(0);
它不起作用。如何正确填充二维数组?

我建议使用

my_array.fill({});
参数中的
{}
创建一个初始化为零的
std::array
,用于填充
my_array

的内容。更改此选项:

my_array.fill(0);
为此:

my_array.fill({});

哪个默认值初始化数组的内容。

我倾向于创建一个包含所有零的
const
array对象,并在需要归零时将其复制到数组上。我可能会将该数组对象命名为
zero
。每当您说“不工作”时,您应该通过发布编译器错误消息或描述运行时出现的错误来证实这一点。仅仅说“不工作”是没有用的——它可能意味着任何事情。谢谢,你的回答解决了我的问题!我在哪里可以读到更多关于这种语法的信息?@SunnyIsaLearner,在web上查找值初始化。你可以从开始。