new[] 是否初始化内置数组

Does new[] initialise an array of builtins?

本文关键字:内置 数组 初始化 是否 new      更新时间:2023-10-16

C++中使用new[]会将分配的数组初始化为所有零吗?

new[] 会初始化内置数组吗?

这取决于:

int* = new int[42];   // default initialization: elements not initialized
int* = new int[42](); // value initialization: elements are zero initialized

请注意术语:在第一个示例中,元素被称为默认初始化,对于内置元素意味着不执行初始化。在第二个示例中,元素是值初始化的,对于内置元素来说,这意味着零初始化。