C++语言支持分离式编译机制,若干文件中的每个文件可被独立编译,因此C++将声明和定义区分开来。
声明是名字为程序所知;
定义负责创建实体。
对于变量来说,定义就是声明。
int x; //可以认为它是定义也是声明。
变量能且只能被定义一次,但可以被多次声明
extern关键字可以声明一个变量而非定义:extern int a;//声明a而非定义a
对函数来说定义和声明不同 。
void sum(int a,int b);//这是函数的声明
void sum(int a,int b)
{
}
//整体是函数定义,函数的定义没有要加上花括号 ,里边是函数的实现。
函数一定要在定义前声明否则会报错 。