C++之声明与定义的区别

直接举例,在C++中,声明与定义的区别如下:

extern int a;//若有extern关键字,则只是声明
int b;//若没有extern关键字,则为声明+定义
int a;//若之前已经声明过,则语句为定义
//所以对C++的变量来说,区分规则如下
//若有extern关键字,则只是声明;若没有,则为声明+定义,其中如果没有extern关键字的变量名之前已经声明过的话,则为定义

extern int A(int);//对函数来说,没有函数体,则只是声明。声明时参数名可以给出也可以不给出,但是定义时一定要明确参数名,如下
int B(int b);
{
    return 0;
}//有函数体,则为定义。
//所以对C++的函数来说,区分规则如下
//extern对函数是定义还是声明时无影响的。当没有函数体时,为声明,此时参数名也可以省略;当有函数体时,为定义,此时参数名必不可少

 

posted on 2015-05-24 23:00  chenyangsocool  阅读(177)  评论(0编辑  收藏  举报