C ++ - 使用全零初始化一定大小的指针数组

时间:2014-03-30 00:07:04

标签: c++ arrays pointers

我有以下C++行:

int len = 1000;
float *matrixAB = new float[len]();

//Stuff with matrixAB

delete [] matrixAB;

数组被声明为ok,但是我需要所有的值都是0而我无法弄清楚如何用这样的指针数组来做这个。

我确信这很简单,但我找不到参考。 有人能指出我正确的方向吗?

2 个答案:

答案 0 :(得分:1)

正如评论所建议的那样,使用std::vector<float>

std::vector<float> matrixAB(len);

这将对每个元素进行零初始化。如果您需要访问指向数组的指针,请使用data()

答案 1 :(得分:1)

如果您想使用矢量,您可以使用以下命令默认初始化它们:

vector<float> vMatrixAB(len ,0);//initialize len elements with the value 0

将此链接视为参考: std:vector

对于普通C数组,您可以使用memset

float matrixAB[len]={0};