如何在C++中使用new操作符初始化内存?


在C++中,new操作符用于分配内存,而不初始化。如果要使用new操作符分配一个类型为int的数组,并且你想将它们全部初始化为默认值(对于int类型来说是0),可以使用以下语法−

语法

new int[10]();

请注意,你只需要使用空括号——例如,你不能使用(0)或其他表达式,这就是为什么这仅适用于默认初始化的原因。

还有其他方法可以使用fill_n、memset等初始化相同的内存,你可以使用它们将对象初始化为非默认值。 

示例

#include<iostream>
int main() {
   int myArray[10];
   
   // Initialize to 0 using memset
   memset( myArray, 0, 10 * sizeof( int ));    
   
   // Using a loop assigns the value 1 to each element
   std::fill_n(array, n, 1);    
}

更新于: 19-6-2020

884次浏览

开启你的 职业生涯

通过完成课程获得认证

入门
广告
© . All rights reserved.