mfc 如何定义全局变量
时间: 2023-08-18 07:09:22 浏览: 242
在MFC下如何定义全局变量和全局函数
在 MFC 中,可以通过以下两种方式定义全局变量:
1. 在全局头文件中定义变量,例如在stdafx.h文件中定义:
```
#ifndef GLOBAL_VARIABLES
#define GLOBAL_VARIABLES
extern int g_nVariable; //声明全局变量
#endif //GLOBAL_VARIABLES
```
然后在需要使用该变量的源文件中包含该头文件,并在其中定义该变量:
```
#include "stdafx.h"
#include "other_header.h"
int g_nVariable = 0; //定义全局变量
```
2. 在应用程序类中定义变量,例如在CMyApp类中定义:
```
class CMyApp : public CWinApp
{
public:
CMyApp();
int m_nVariable; //定义全局变量
};
CMyApp::CMyApp()
{
m_nVariable = 0; //初始化全局变量
}
```
然后在需要使用该变量的源文件中通过AfxGetApp()函数获取应用程序类的指针,并使用该指针访问全局变量:
```
#include "stdafx.h"
#include "other_header.h"
CMyApp* pApp = (CMyApp*)AfxGetApp();
int nVariable = pApp->m_nVariable; //访问全局变量
```
阅读全文