请问一个很弱的问题 如何在基于对话框中定义全局变量 如题 如何在基于对话框中定义全局变量在Stdafx.H里申明extern int pData[5];在Stdafx.cpp里定义int pData[5]={0};这样定义使用对吗对吗 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 如果这个全局变量用的地方比较多可以定义在APP中。不要把你的东西方Stdafx.h(cpp)里,他和预编译有关。如:class CxxxApp : public CWinApp{ int m_ComTypeNow; char m_szStationName[40]; char m_szIPadress[20]; char m_szPort[10];//用时:在用的cpp中加:extern CxxxApp theApp;//或者:CWinApp* AfxGetApp( ); strcpy(theApp.m_szIPadress,szIPadr); 可以在任意的.cpp中声明,只要不在函数内部就行。 完全可以。在Stdafx.H里申明也可以这样 extern int pData[];//引用的是数组变量 俺是这么做的这是.h里面的#define SNOOPEREXTERN externSNOOPEREXTERN TCHAR *g____Text_Buf; //全局文本缓冲,有0x10000大小SNOOPEREXTERN int g____Textp; //指针SNOOPEREXTERN int g____OldTextp;SNOOPEREXTERN HWND g____TheViewHandle; //view的hwndSNOOPEREXTERN CRichEditCtrl *g____pEdit; //RichEdit控件#ifdef SNOOPEREXTERN#undef SNOOPEREXTERN#endif#define SNOOPEREXTERNSNOOPEREXTERN TCHAR *g____Text_Buf; //全局文本缓冲,有0x10000大小SNOOPEREXTERN int g____Textp; //指针SNOOPEREXTERN int g____OldTextp;SNOOPEREXTERN HWND g____TheViewHandle; //view的hwndSNOOPEREXTERN CRichEditCtrl *g____pEdit; //RichEdit控件SNOOPEREXTERN HWND g____TheFrameHandle; //frame的hwndSNOOPEREXTERN HWND g____TheScheduleHandle; //时序工具的hwnd这是.cpp里面的,方法虽然笨,好处是同一份代码在两面一粘贴就行了。 我是在.app里定义的,我也是基于对话框的,CMyApp里定义一个全局变量是不是也是可以的,我想就多媒体定时器的问题跟你好好讨论下 你是MFC产生的对话框吗,那就一定有CxxxApp类,他是你用类向导产生时IDE为你产生的。如果是SDK那就更好办了,随便定义在哪里(g_Xxxx),用时extern就行了 求助:BHO中,如何获得浏览器下载文件的URL地址 VC6 stl::sort函数中strcmp的问题 蛋疼。。这错误把我整到跳河的心都有了 按位读写内存,而不是按字节,帮我想个好办法 在MDI中如何实现这样的界面??? 人体识别 请问:已知别人程序窗口上某个按钮的hwnd,想要给这个按钮发送一个“回车”或“空格”的命令,该怎么写? 为什么这个messagebox会弹出2次?(线程问题) 对话框的阴影实现(无法用AlphaBlend)? 通过LPVOID传递结构对象之后,还原结构体各参数显示混乱或传递失败的问题! 属性表单去除边框 加法问题
不要把你的东西方Stdafx.h(cpp)里,他和预编译有关。
如:class CxxxApp : public CWinApp
{
int m_ComTypeNow;
char m_szStationName[40];
char m_szIPadress[20];
char m_szPort[10];
//用时:在用的cpp中加:
extern CxxxApp theApp;
//或者:CWinApp* AfxGetApp( );
strcpy(theApp.m_szIPadress,szIPadr);
也可以这样 extern int pData[];//引用的是数组变量
SNOOPEREXTERN int g____Textp; //指针
SNOOPEREXTERN int g____OldTextp;
SNOOPEREXTERN HWND g____TheViewHandle; //view的hwnd
SNOOPEREXTERN CRichEditCtrl *g____pEdit; //RichEdit控件#ifdef SNOOPEREXTERN
#undef SNOOPEREXTERN
#endif#define SNOOPEREXTERNSNOOPEREXTERN TCHAR *g____Text_Buf; //全局文本缓冲,有0x10000大小
SNOOPEREXTERN int g____Textp; //指针
SNOOPEREXTERN int g____OldTextp;
SNOOPEREXTERN HWND g____TheViewHandle; //view的hwnd
SNOOPEREXTERN CRichEditCtrl *g____pEdit; //RichEdit控件
SNOOPEREXTERN HWND g____TheFrameHandle; //frame的hwnd
SNOOPEREXTERN HWND g____TheScheduleHandle; //时序工具的hwnd这是.cpp里面的,方法虽然笨,好处是同一份代码在两面一粘贴就行了。
如果是SDK那就更好办了,随便定义在哪里(g_Xxxx),用时extern就行了