C++ 变量初始化总结
堆空间,new操作初始化
1、对于有自己写构造函数的类,不论类型名后面有没有括号()或者数组[],都用构造函数进行初始化,如果构造函数delete,则编译报错;
2、如果没有构造函数,则不加括号的new只分配内存空间,不进行内存的初始化,
3、而加了括号()的new会在分配内存的同时初始化为0。
栈空间
不初始化时,内存中的数据残留。
全局变量、静态变量
不初始化时,赋0值。
堆空间,new操作初始化
1、对于有自己写构造函数的类,不论类型名后面有没有括号()或者数组[],都用构造函数进行初始化,如果构造函数delete,则编译报错;
2、如果没有构造函数,则不加括号的new只分配内存空间,不进行内存的初始化,
3、而加了括号()的new会在分配内存的同时初始化为0。
栈空间
不初始化时,内存中的数据残留。
全局变量、静态变量
不初始化时,赋0值。