全局变量应在哪里定义? 全局变量应在哪里定义? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 for example:in stdafx.cppint g_test;in other files:extern int g_test;g_test=...; 刚生成的程序一开始就有一个theApp应用程序全局变量,你可以在它的类里面定义,也可以在你自己定义的类里面加static关键字定义,或着在CPP文件中的开头定义。 你可以这样定义一个全局变量:1。在你工程中的任何一个.cpp文件中(只能是一个)的全局范围内(就是不在任何类的定义里面),定义变量。 例如:int g_Value;2。在一个被所有的.cpp文件都包含的头文件中(一般都是stdafx.h)中,加入以下声明: extern int g_Value;就可以了。绝对正确,接分了。 好像在vc中,classwizard生成的project中,就包含一个全局变量,即theApp yourapp;每个都有的,你把你的全局变量定义在他下面就行了,别的地方就用extern引用就行了, 绝对同意houdu(),你不用再问了,给分吧,那个绝对正确,我就是这样用的,这是我认识的最方便的方法。省去extren了。。 我补充一下吧,1,在你的XXXXApp.cpp里,加入你要的全局变量/////////////////////////////////////////////////////////////////////////////// The one and only CXXXXXXApp objectCXXXXXXApp theApp;int m_YourVariable ;2........与houdy()同。 你也可以这样定义:把该变量放在该应用程序类的头文件中的attribute处。然后在程序任何地方都可以用如下方法来访问该变量: CMyApp * app = (CMyApp*)AfxGetApp(); app->MyGlobalVar = ...这种方法具有OOP的特点,封装性好! 我觉得要规范些,能让人比较好的阅读,最好不要加到stdafx.h中加到如:CXXXXXXApp theApp;int m_YourVariable ;比较显眼 因为大家都知道theApp是一个全局变量! 如果用theApp的话,是不是也需要先在开头extern XXXX theApp这样定义一下呢? win32的程序设计 基于ATL对话框中打开目录选择文件,如何得到这样路径D:\\C++\\SignAddin\\file.doc?? opengl 位图写字 中的数组问题 装了VC++6.0怎么卸载不了? 关于文本颜色的设置 请问VC6在制作支持MFC的ATL控件的时候,引用theApp出错的问题 MDI中VIEW的切换问题. 关于菜单选中不选中的小问题.谢谢! 请问一个简单的问题,如何添加多个接口? come on!high hand! 怎么通过odbc实现对oracle的多表查询? 怎样在vc6.0的MFC中添加一个派生于CObject的类啊,急用!!!!
in stdafx.cpp
int g_test;in other files:
extern int g_test;
g_test=...;
1。在你工程中的任何一个.cpp文件中(只能是一个)的全局范围内(就是不在任何类的定义里面),定义变量。
例如:int g_Value;
2。在一个被所有的.cpp文件都包含的头文件中(一般都是stdafx.h)中,加入以下声明:
extern int g_Value;
就可以了。
绝对正确,接分了。
1,在你的XXXXApp.cpp里,加入你要的全局变量
/////////////////////////////////////////////////////////////////////////////
// The one and only CXXXXXXApp objectCXXXXXXApp theApp;int m_YourVariable ;2........与houdy()同。
把该变量放在该应用程序类的头文件中的attribute处。然后在程序任何地方都可以用如下方法来访问该变量:
CMyApp * app = (CMyApp*)AfxGetApp();
app->MyGlobalVar = ...
这种方法具有OOP的特点,封装性好!
加到如:
CXXXXXXApp theApp;int m_YourVariable ;比较显眼