变量类型:变量其实是一个程序可操作存储区的名称,C++中每个变量都有指定的类型,类型决定了变量存储的大小和布局。该范围内的值都可以存到内存上。
变量定义:变量定义就是告诉编译器变量存储的位置,以及如何存储变量。
变量申明:变量声明向编译器保证变量以给定的类型和名称存在,这样编译器在不需要知道变量完整细节的情况下也能继续进一步的编译。变量声明只在编译时有它的意义,在程序连接时编译器需要实际的变量声明。
区分定义和申明:我们通常在定义的时候其实已经申明了。而在申明的时候仅仅只是申明,还需要编译器去找具体的定义。用函数的定义和申明来理解变量的会比较容易。
如:
1 void fun1(); //函数声明 2 3 void fun1(){ //函数定义 4 cout<<"fun1"<<endl; 5 }
同样的推到变量的:
1 int a = 0; //定义并声明了变量 a 2 extern int a; //只是声明了有一个变量 a 存在,具体 a 在哪定义的,需要编译器编译的时候去找。