我刚刚开始进入C++,我想养成一些好习惯.如果我刚刚int使用new运算符分配了一个类型的数组,我怎么能将它们全部初始化为0而不用自己循环遍历它们?我应该用memset吗?有没有"C++"方法呢?
有这样的代码:
#include <iostream>
int main(){
unsigned int* wsk2 = new unsigned int(5);
std::cout << "wsk2: " << wsk2 << " " << *wsk2 << std::endl;
delete wsk2;
wsk2 = new unsigned int;
std::cout << "wsk2: " << wsk2 << " " << *wsk2 << std::endl;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
结果:
wsk2: 0x928e008 5
wsk2: 0x928e008 0
Run Code Online (Sandbox Code Playgroud)
我读过new没有用零初始化内存.但似乎它确实如此.它是如何工作的?