1.变量显示初始化
- 表达式初始化:
这里的表达式可以是:常量、其他变量、其他表达式、函数
double p1 = 0;
double p2 = p1;
double p3 = p1 * 4;
double p4 = fun(p1);
- 列表初始化:
给变量p赋值为0有以下四种形式:
//普通初始化
double p = 0;
double p(0);
//列表初始化
double p = {0};
double p{0};
注意:内置类型,列表初始化,如果存在丢失信息风险,则编译器报错
long double ld = 3.14159265;
//错误:转换未执行,编译器报错
int p1 = {ld};
int p2{ld};
//正确,转换自动执行,且确实对视了精度
int p3 = ld;
int p4(ld);
2.变量默认初始化
- 由位置决定:
函数外:默认初始化;
函数内:不默认初始化,未定义;
//例子
- 自定义类型:
自定义类型由类内保证
//例子