Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/142.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.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++ 将双精度数组初始化为非零值_C++_Visual Studio 2010_Visual C++ - Fatal编程技术网

C++ 将双精度数组初始化为非零值

C++ 将双精度数组初始化为非零值,c++,visual-studio-2010,visual-c++,C++,Visual Studio 2010,Visual C++,我正在做以下工作: double dVar[100] = { 0.1 }; 但当我调试时,它只将0.1放入dVar[0],其余都是0.0 我只是想避免一个for循环 有人能帮我吗 但当我调试时,它只将0.1放入dVar[0],其余都是0.0 这是预期的行为。如果初始值设定项包含的元素少于聚合元素,则对其余元素执行数组,在本例中,将其设置为零 在不初始化时,为避免显式手动编码循环,请使用: 正如在他的回答中所建议的,将数组更改为std::vector将允许初始化为非零的值。如果STD::vect

我正在做以下工作:

double dVar[100] = { 0.1 };
但当我调试时,它只将0.1放入dVar[0],其余都是0.0

我只是想避免一个for循环

有人能帮我吗

但当我调试时,它只将0.1放入dVar[0],其余都是0.0

这是预期的行为。如果初始值设定项包含的元素少于聚合元素,则对其余元素执行数组,在本例中,将其设置为零

在不初始化时,为避免显式手动编码循环,请使用:

正如在他的回答中所建议的,将数组更改为std::vector将允许初始化为非零的值。如果STD::vector可以改变大小的事实是不令人满意的,编译器可能会考虑使用C++ 14个特性。无法更改dynarray中的元素数,并且可以在初始化时为所有元素分配除零以外的值,类似于std::vector:

但当我调试时,它只将0.1放入dVar[0],其余都是0.0

这是预期的行为。如果初始值设定项包含的元素少于聚合元素,则对其余元素执行数组,在本例中,将其设置为零

在不初始化时,为避免显式手动编码循环,请使用:

正如在他的回答中所建议的,将数组更改为std::vector将允许初始化为非零的值。如果STD::vector可以改变大小的事实是不令人满意的,编译器可能会考虑使用C++ 14个特性。无法更改dynarray中的元素数,并且可以在初始化时为所有元素分配除零以外的值,类似于std::vector:


这是预期的行为。如果不显式初始化数组的所有元素,它们将自动设置为零

要将所有元素初始化为0.1,可以使用和使用具有显式初始化的构造函数

std::vector dVar(100, 0.1);

这将创建一个包含100个元素的向量,所有元素都设置为0.1。

这是预期行为。如果不显式初始化数组的所有元素,它们将自动设置为零

要将所有元素初始化为0.1,可以使用和使用具有显式初始化的构造函数

std::vector dVar(100, 0.1);

这将创建一个包含100个元素的向量,所有元素都设置为0.1。

谢谢大家,它成功了。谢谢大家,它成功了。
std::vector dVar(100, 0.1);