零初始化是将c ++中对象的初始值设置为零。
T{} ;
char array [n] = “”;
进行零初始化的情况是-
具有静态或线程本地存储的命名变量被初始化为零。
它用作非类类型和没有构造函数的类成员的值的初始化。
当其长度大于要分配的字符数时,可用于初始化字符数组。
某些类型的变量(例如静态变量和线程局部变量)首先被初始化为零,然后在被调用时重新初始化为一个值。
零初始化的指针称为空指针。
该程序显示C ++中零初始化的实现-
#include <iostream>
#include <string>
using namespace std;
struct zeroInitialization {
int x, y, z;
};
float f[3];
int* p;
string s;
int main(int argc, char* argv[]){
zeroInitialization obj = zeroInitialization();
cout<<"Zero initialized object variable :\t";
cout<<obj.x<<"\t"<<obj.y<<"\t"<<obj.z<<"\n";
cout<<"Zero initialized float value :\t";
cout<<f[0]<<"\t"<<f[1]<<"\t"<<f[2]<<"\n";
cout<<"Zero initialized pointer value :\t";
cout<<p<<"\n";
return 0;
}
输出结果
Zero initialized object variable : 0 0 0
Zero initialized float value : 0 0 0
Zero initialized pointer value : 0