全局变量的作用域是不是整个程序?

lxb365 2005-12-24 01:35:09
比如我有3个文件,list.h,list.cpp,test.cpp
我在lish.h里面定义了一个枚举型的全局变量,发现在3个文件里面都可以使用,记得好象在不同的文件里面使用同一个变量需要加exturn,可是我没有加也照样用啊!
...全文
514 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
vollin 2005-12-24
  • 打赏
  • 举报
回复
要记住定义全局变量是不得已而为之,且一定要在.cpp中定义,在对应的头文件中
写上extern ...
其它文件要使用时只需要包含这个头文件即可。
在头文件上定义很容易出问题。
loujing 2005-12-24
  • 打赏
  • 举报
回复
全局变量的作拥域是从声明处到当前文件结束(如果没有extern扩展的话)
wzjall 2005-12-24
  • 打赏
  • 举报
回复
对呀!引用全局变量,以上两种方式都可以的.
我喜欢用extern
Zark 2005-12-24
  • 打赏
  • 举报
回复
如果你是在h文件中"定义"的全局变量,而且各cpp文件都#include这个H文件的话,就可以使用,但编译时应会有提示说那个全局变量重复定义,但如果你使用选项强行忽略那个错误的话,也是可以通过的.

如果你贴这些文件来的话,就更容易定位了,而不是象现在这样猜了.
lxb365 2005-12-24
  • 打赏
  • 举报
回复
对不起,我写错了,应该是extern

64,637

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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