动态内存分配 - c ++中基元类型的默认初始化

Joh*_*rer 17 c++ memory-management initialization

如果我分配一些原始类型的数组,例如

double *v = new double[10];
Run Code Online (Sandbox Code Playgroud)

我需要知道,数组条目的初始值是什么.

它是在标准或编译器dependend中指定的,我在哪里可以找到它.

谢谢,约翰内斯

Nav*_*een 28

不,数组内容未初始化.您需要使用每个元素double *v = new double[10]();的默认值0(注意()).

  • 你是对的,我的错.标准草案第5.3.4.15段. (3认同)
  • 这完全不明显,很可能在代码审查中被忽视......:/ (3认同)