c++ extern关键字

extern 关键字

可以变量的定义和声明分离,定义变量时不能赋初值,用extern关键字。

用于多文件的同一变量使用。

功能测试

三个文件 main.cpp text.h text.cpp

  • 使用 externtext.h 声明变量 v

  • text.cpp 实现修改变量 v 函数

  • main 定义变量 v,输出,调用修改函数输出,编译成功。

extern 关键字去除,编译失败,重复定义错误

text.h 用宏定义限制只能存在一个,编译失败,还是重复定义错误

在如上基础上,不包含 text.cpp 文件编译,编译成功(main.cpp记得注释修改函数

在如上基础上,main.cpp 调用多次 text.h,编译成功

在如上基础上,去除宏定义不限制只能存在一个,编译失败,重复定义

大概说明:宏定义限制头文件存在一次是有效的。但是多个 .cpp 文件包含同一个 .h 头文件,是应该分别在其中引用头文件,所以宏定义无法限制总共只能包含一次。

所以要用多文件使用同一全局变量目前我还是只知道这个 extern 刚了解的关键字,QAQ。


发现这里的排版和本地差别有点大,有点丑。随便改进一点排版就这样吧。本人缺乏美感。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值