请问定义如何多个cpp同时操作的变量阿?

eastwolf2003 2004-04-17 10:29:56
我在某个.h当中声明了,
extern bool ok=false;

编译的时候出现了警告,这个会出现问题吗?

...全文
62 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
13661023811 2004-04-17
  • 打赏
  • 举报
回复
所有的变量在使用前,必须初始化。

全局变量 在.h或在.cpp中都可以定义,但一个变量只能定义一次。

其它的文件中,只能引用,但必须实例化。

举个可能你想看的例子:
在.H中定义:
typedef struct IdStruct
{
int Id;
AnsiString Name;
} TIdStruct;
typedef TIdStruct* PIdStruct;

在.CPP中:
PIdStruct cc1=new TIdStruct;

举个通用的例子:
在.cpp中
list<mbclass>mblist;
在.h中
extern list<mbclass>mblist;
JetKingLau 2004-04-17
  • 打赏
  • 举报
回复
http://expert.csdn.net/Expert/topic/2943/2943213.xml?temp=.3008997

在 a.h 文件中,

extern Integer var;

在 a.cpp 文件中,

Integer var;


在其它需要用到 var 变量的 .cpp 中,

#include "a.h"

然后就可以在该 .cpp 中访问 var 了。
shihhuangti 2004-04-17
  • 打赏
  • 举报
回复
可以在头文件里面进行全局变量的定义!
只不过有一点技巧!

//对应于test.cpp的头文件test.hpp
#ifndef
#define test_ext
#else
#define test_ext extern
#endif

//下面就可以定义在test.cpp里面定义,而其他文件使用的变量了
test_ext int a;
test_ext bool b;
......


在具体使用时可以建立一个综合性的头文件,里面包含所有可能使用到的全局变量和函数原型
不要忘记定义相应的XXX_ext(test_ext)符号,保证在多个定义此变量的地方只有一处是真正的定义,其他的全部是外部变量!
jiangshx 2004-04-17
  • 打赏
  • 举报
回复
主窗体:bool ok=false;
其他窗体:extern bool ok;

13,825

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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