您的位置:首页 > 其它

vc定义全局变量的问题

2010-12-30 13:58 309 查看
全局变量实际分为"文件范围"内的全局变量和"工程范围"内的全局变量

文件范围的:

1.由于c++编译器是按文件为单位的,所以普通定义的全局变量其作用域也仅限于所在文件

工程范围的:

1.若定义个全局变量,想让其它文件也能使用,则必须把它声明为extern类型(注:extern并非单纯是从外面引入的意思,也含有引出的意思,通俗的理解,可以把它当成一种关键字,该关键字的含义是规定该变量在整个工程中是可见的,也是唯一的).

2.工程范围全局变量在实际实现起来是通过头文件包含的方式实现的,也就是说把其声明在某个头文件中,其它文件想用它就包含这个头文件

3.由于头文件可能被多个文件包含,假如把全局变量的定义放在头文件里,则就会出现重复定义,因此必须仅仅在头文件中声明,其它文件在使用它的时候可以自行给它定义

如果想让限定某个全局变量就为本文件使用,可以给它加个static,当然了不加效果也是一样的.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: