extern 函数,是不是extern可以省略?

baitiane7100 2012-04-27 09:08:45
extern 函数确实与extern变量不一样


例子1:

a.h

void FunA(); //这里用不用extern修饰,链接都是对的,是不是函数可以省略extern啊???我理解没有错吧。

a.cpp

#include"a.h"


void FunA()
{

}


b.cpp

#include"a.h'



main.cpp

#include"a.h"

int main()
{

return 0;
}


例子2:

a.h

extern int g_va;

a.cpp

int g_val;

b.cpp

#include"a.h"


main.cpp

#include"a.h"
int main()
{
return 0;

}

...全文
648 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
baitiane7100 2012-04-27
  • 打赏
  • 举报
回复
哈哈,我也感觉到了。。


从这个角度来看,c++有的地方做的不好,extern不如规定,必须使用,不要省略。
hen_hao_ji 2012-04-27
  • 打赏
  • 举报
回复
是由于函数的定义和声明是有区别的,定义函数要有函数体,声明函数没有函数体,所以函数定义和声明时都可以将extern省略掉,反正其他文件也是知道这个函数是在其他地方定义的,所以不加extern也行

http://hi.baidu.com/%D2%C5%CA%A7%B5%C4%BD%C7/blog/item/f5e4052a643d4490033bf6bb.html
evencoming 2012-04-27
  • 打赏
  • 举报
回复
不管你有没有省略,我是省了
baitiane7100 2012-04-27
  • 打赏
  • 举报
回复
不是睡觉了吧

70,014

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧