C++语言支持分离式编译机制,该机制允许将程序分割为若干个文件,每个文件可以被独立编译。如果将程序分为多个文件,则需要有在文件间共享代码的方法。例如,一个文件的代码可能需要使用另一个文件中定义的变量。为了支持分离式编译,C++语言将声明和定义区别开来。
声明:一个文件如果要使用在其他文件定义的变量,则必须要包含对那个变量的声明,告诉后面的程序,我要用这个变量。声明一个变量的方法,是在变量名字前添加关键字extern,并且不要显式的初始化变量。一旦声明中显式的初始化了变量,就成为了定义。
extern int a; //声明
extern int a=1; //定义
定义:创建一个变量。
如果要在多个文件中使用同一个变量,就必须要将声明和定义分离。变量的定义只能出现在一个文件中,声明可以出现在多个文件中。
变量只能被定义一次,但是可以声明多次。