零初始化是将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