C++区分了声明和定义:
定义:用于为变量分配存储空间,还可以为变量指定初始值。在一个程序中,变量有且仅有一个定义
声明:用于向程序表明变量的类型和名字。定义也是声明:当定义变量的时候我们声明了类型和名字。
可以通过关键字extern声明变量:
extern int i; //声明变量
int i; //定义变量
这时extern是声明而不是定义,也不分配存储空间。
extern int i = 0; //定义变量
*&* 通常把一个对象定义在它首次使用的地方是一个很好的方法。