| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 971 人关注过本帖
标题:全局变量的定义
只看楼主 加入收藏
yuelingling
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2006-4-23
收藏
 问题点数:0 回复次数:1 
全局变量的定义


自学C++也有些时日了,也看了许多代码,现在有个问题想向各位C++的高手及老手请教

,在程序中如何定义一个全局的变量,这个全局变量并不是在类当中的全局变量,而是

无论在程序的什么地方都能调用的变量,就算是在不同的类中也能调用这个变量。我看

了不少的代码,发现了一些不同的定义方法,但大都是大同小异的,我根据他们的方法

产生了自己的全局变量的定义方法。如下:
1:先建一个头文件 比如文件名为(Var.h) 在头文件里定义要使用的变量,但在定义之

前加上关键字 “extern ” 如 extern int i;然后再建一个和Var.h相应的代码文件

Var.cpp,然后再在这个文件中再次定义 int i,但是不在前面加上 "extern",这样就

行了,只要在想调用整型变量 i 的模块中加入头文件Var.h这样就能成功的调用 i 了

。但是我不知道这种方法是否正确,或者是还有更好更简单的方法,希望大家指点指点

,先谢谢了。

搜索更多相关主题的帖子: 变量 全局 定义 
2006-04-24 22:06
aogun
Rank: 5Rank: 5
等 级:贵宾
威 望:17
帖 子:638
专家分:0
注 册:2006-4-5
收藏
得分:0 
没有更简单的方法了,另外看起来lz是对基本概念不清楚,这样是否应该多看书而不是代码
定义一个全局变量,首先必须在cpp或者c文件中定义,例如:
int i;
但是这种情况下其它c或者cpp文件是不能访问这个变量,应为它们不知道有这个变量,所以必须告诉它们,
所以在一个头文件中声明extern int i;是为了告诉其它文件这个全局变量的存在及其类型,如果其它文件需要访问这个变量的话就直接包含这个头文件就行了
另外如果不包含声明的头文件的话,还可以在用到这个全局变量的c或者cpp文件中直接声明:
extern int i;
加extern的原因是告诉编译器这里只是声明而不是定义,需要编译器到其它文件中寻找该变量进行链接,否则就又定义了一个i变量

[此贴子已经被作者于2006-4-25 10:30:06编辑过]


世界上总共有 10 种人,一种懂得什么是二进制 ,一种不懂。
2006-04-25 10:29
快速回复:全局变量的定义
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.033531 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved