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

Sun*_*ner 3 c++ arrays templates stl initialization

我有一个模板化的二维数组std::array< std::array<ScalarType ,3> ,3 > my_array,我想在程序中的不同时间将它们全部设置为零。看起来我可以使用std::array::fill但是

my_array.fill(0);
Run Code Online (Sandbox Code Playgroud)

不管用。如何正确填充二维数组?

R S*_*ahu 5

我建议使用

my_array.fill({});
Run Code Online (Sandbox Code Playgroud)

参数中的{}会创建一个零初始化的std::array<ScalarType, 3>,用于填充 的内容my_array