visual studio 2015中C++全局作用域是什么意思

如果在两个源文件的全局作用域内中分别intx=10;intx=20;编译时会发生错误但是x不是在源文件的作用域中吗,难道全局作用域是整个程序的全局作用域... 如果在两个源文件的全局作用域内中分别int x=10; int x=20;
编译时会发生错误
但是x不是在源文件的作用域中吗,难道全局作用域是整个程序的全局作用域
展开
 我来答
百度网友4091af4
2016-12-14 · 超过24用户采纳过TA的回答
知道答主
回答量:42
采纳率:100%
帮助的人:20.6万
展开全部
你上面举的例子是整个项目都可以用的全局变量,只不过别的源文件要用得再上声明:
extern int x;

如果你想变量仅在这个源文件内有效,前面加上static 声明。
static int x = 10;
追问
就是说在源文件中的全局作用域上定义一个变量,如果没有加上static,就意味着是在整个程序的全局作用域上定义的吗
追答
是。
但是作为好的编程习惯,不应该出现同名变量的(函数内部定义的局部变量除外)
小呆瓜
2016-12-13 · 知道合伙人金融证券行家
小呆瓜
知道合伙人金融证券行家
采纳数:2850 获赞数:12626
从事C++行业多年

向TA提问 私信TA
展开全部
全局变量在其他类或函数调用的时候,需要增加extern
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式