Cpp Primer--c++内置类型的默认初始化

Cpp Primer–c++内置类型的默认初始化

标签(空格分隔): Cpp


内置类型

内置类型是编程语言自己定义的一些类型
在C++中内置类型有:
整型:
①整数 int、short和long
②字符型 char和wchar_t
③布尔型 bool
整型可用修饰:unsigned
浮点:
float、double和long double
另外还定义了一种称为void的特殊类型。void类型没有对应的值,仅用在有限的情况下。通常用作无返回值的函数的返回类型。

初始化

如果内置类型的变量未被显示初始化,它的值由定义的位置决定。
定义于任何函数之外的变量被初始化为0。
定义于函数体内部的内置类型将不被初始化,一个未被初始化的内置类型变量的值是未定义的,如果试图拷贝
或以其他形式方位此类值将引发错误。
同样动态分配的内置类型(如int)的对象的值将是未定义的,而类类型对象(如string)将用默认构造函数进行初始化。

int *pi=new int;  //默认初始化, *pi的值为未定义。  
int *pi=new int(); //值初始化为0,*pi的值为0  
string *ps=new string;//默认初始化 *ps的值为空string  
string *ps=new string();//值初始化为空string

你可能感兴趣的:(C++)