admin 管理员组

文章数量: 1086019


2024年5月25日发(作者:c语言从socket读取数据)

VC++中关于全局量的定义有两种比较好的方法。

第一种

新建一个Generic Class类,如CGlobals。会产生一个Globals.h头文件和一个

文件,在ClassView中会产生一个CGlobals类。由于主要目的是利用产生

的.h和.cpp文件,所以,将两个文件中关于类声明和定义的部分都删除或注释掉,但保留

其他语句,此时ClassView中的CGlobals类消失。

对于全局结构体定义,首先在Globals.h头文件中构造结构体,用typedef方式,如:

typedef struct tagLineType

{

int ID;

CString Type;

double r0;

double x0;

}LINETYPE; // 名称可随便

而后,在Globals.h头文件:

extern LINETYPE *lineType; // 注意,这里不能再初始化

而后,在文件中:

LINETYPE *lineType = NULL; // 注意,在这里初始化

对于普通全局变量(如int型)定义,首先在Globals.h头文件中:

extern int iTime; // 注意,这里不能再初始化

然后在中:

int iTime = -1; // 注意,在这里初始化

对于全局常量定义,首先再在Globals.h头文件中:

extern const int UB;

而后中:

const int UB = 10;

以上是第一种方法,是我自己总结试验成功的。用该方法定义完毕后,无论哪个.cpp

文件要用到全局变量,只需在该.cpp文件中#include "Globals.h"即可,而无需再在.cpp

文件中extern,所有全局变量、全局常量、全局结构体都是可见的。该方法的总体思路是,

象theApp那样,在.cpp中定义,在.h头文件中extern声明。另外要注意,变量的初始


本文标签: 全局 定义 结构 注意 语言