可以引用所有类的全局变量在什么地方添加? 只要添加在某一个include了所有类的头文件的地方不就可以了么? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 什么是“可以引用所有类的全局变量”如果是“所有类可以引用的全局变量”只要在符合逻辑的地方都可以,一般VC在App或View中加。访问是用AfxGetApp()->或获取View 的指针(比较多,一时想不出来)来访问。 可以在CYourApp类中加这样:在CYourApp类中int m_var;访问时:CYourApp * app = (CYourApp *)AfxGetApp();app->m_var = .........; 不要在class中定义,定义在之外。比如:在文件.h中int g_nTemp;class A{...............}在你想调用的文件中:extern int g_nTemp; 假设你创建程序:XXX那么你在XXX.cpp中加入(不要在class内部,就放置在class上面,也务必放置在#include上面):int g_nTemp = 0;//初始化接着在XXX.h加入extern int g_nTemp;那么一般每个class都要#include XXX.h,那么你就可以随心所意地调用g_nTemp了。 在程序的任意地方定义 int a;在需要此变量的地方(不在同一个文件内)extern int a;这两个为同一个a例如:在你的应用程序类的实现文件中定义了一个变量(不要定义成应用程序类的数据成员)int a;在你的视图类中要用到该变量就extern int a;OK 在app头文件的类定义前面定义extern int g_nTemp;再在app的cpp文件开头int g_nTemp=0 初始化一下即可 feelinn(feelinn) 老兄说得很对,你的问题是不是提的有毛病什么是“可以引用所有类的全局变量”如果是“所有类可以引用的全局变量”只要在符合逻辑的地方都可以,一般VC在App或View中加。访问是用AfxGetApp()->或获取View 的指针(比较多,一时想不出来)来访问。 在APP的CPP中定义:int g_nVar = -1;在stdafx.h中定义:extern int g_nVar;到处可直接使用! 在mfc中,一般都加在app类中,因为它的指针最容易得到!AfxGetApp()->,至于你所保存的类的值可以在其构造函数中赋到app类的成员变量中,以备后来使用。 定义在cpp文件中。其cpp文件用到的话 定义前面加 extern 关键字 “可以引用所有类的全局变量”这个说法似乎有些不妥,应该称作“所有类可以引用的全局变量”,实际上你想问的是全局变量如何定义和使用,是不是? 如果是的话,哪问题就比较简单了.全局变量只要定义在任何函数体外即可,当然最好是统一定义在一个.cpp或.h中,习惯上将全局变量定义在类的app类中.需要使用时,只要引用即可.在需要使用的cpp文件上面填写如下语句, extern + 全局变量定义 自绘菜单有时出现选择错位的问题 用多线程实现多个小球运动的问题! 请教3D游戏中3D模型的表面坐标 请大家推荐优秀的VC源码,分不够可以再加 头疼的内存溢出问题,给分外加100元现金 应用程序对象实例初始化问题,大家帮忙看看 滚动条的问题。 delete 和 delete [] 的区别? 菜鸟问题,BMP位图怎么转成灰度图? vc中客户端程序怎样访问服务器中的sql 动态菜单是怎么实现的,可以说一下原理吗?! 怎样在ATL中使用ActiveX控件?
如果是“所有类可以引用的全局变量”只要在符合逻辑的地方都可以,一般VC在App或View中加。访问是用AfxGetApp()->或获取View 的指针(比较多,一时想不出来)来访问。
这样:
在CYourApp类中
int m_var;
访问时:CYourApp * app = (CYourApp *)AfxGetApp();
app->m_var = .........;
比如:
在文件.h中
int g_nTemp;
class A
{
...............
}在你想调用的文件中:
extern int g_nTemp;
那么你在XXX.cpp中加入(不要在class内部,就放置在class上面,也务必放置在#include上面):int g_nTemp = 0;//初始化
接着在XXX.h加入extern int g_nTemp;那么一般每个class都要#include XXX.h,那么你就可以随心所意地调用g_nTemp了。
int a;
在需要此变量的地方(不在同一个文件内)
extern int a;
这两个为同一个a
例如:
在你的应用程序类的实现文件中定义了一个变量(不要定义成应用程序类的数据成员)
int a;
在你的视图类中要用到该变量
就extern int a;
OK
再在app的cpp文件开头int g_nTemp=0 初始化一下即可
什么是“可以引用所有类的全局变量”
如果是“所有类可以引用的全局变量”只要在符合逻辑的地方都可以,一般VC在App或View中加。访问是用AfxGetApp()->或获取View 的指针(比较多,一时想不出来)来访问。
在stdafx.h中定义:extern int g_nVar;
到处可直接使用!
如果是的话,哪问题就比较简单了.全局变量只要定义在任何函数体外即可,当然最好是统一定义在一个.cpp或.h中,习惯上将全局变量定义在类的app类中.需要使用时,只要引用即可.在需要使用的cpp文件上面填写如下语句,
extern + 全局变量定义