1、值初始化
顾名思义,就是用数值初始化变量。如果没有给定一个初始值,就会根据变量或类对象的类型提供一个初始值。对于int类型其值初始化后的值为0。
2、默认初始化:如果定义变量时没有指定初值,则变量被默认初始化。其初始值和变量的类型以及变量定义的位置相关。默认初始化类对象和默认初始化内置类型变量有所不同。
对于默认初始化内置类型变量来说:
1)定义在函数体之外的变量是全局变量,一般存储在全局区,存储在全局区的变量一般会执行值初始化。此时,其初始值和变量的类型有关。对于int类型其初始值为0,对于char类型其默认初始值为' '。例子如下:
#include <iostream>
using namespace std;
int i;
double d;
char c;
int main()
{
cout << "i = " << i << endl;
cout << "d = " << d << endl;
cout << "char" << c << "char" << endl;