在文档-视图结构中,派生了一个CBUTTON类,myButton类.在其中增加一个静态变量后,编译出错.
具体如下:
#pragma once
class CButtonMenu : public CButton
{
DECLARE_DYNAMIC(CButtonMenu)
public:
CButtonMenu();
virtual ~CButtonMenu();
protected:
DECLARE_MESSAGE_MAP()
public:
afx_msg void OnBnClicked();
int btnMenuID0; //通过编译
static int btnMenuID1; //编译出错
};
出错信息如下:
error LNK2001: 无法解析的外部符号"public: static int
具体如下:
#pragma once
class CButtonMenu : public CButton
{
DECLARE_DYNAMIC(CButtonMenu)
public:
CButtonMenu();
virtual ~CButtonMenu();
protected:
DECLARE_MESSAGE_MAP()
public:
afx_msg void OnBnClicked();
int btnMenuID0; //通过编译
static int btnMenuID1; //编译出错
};
出错信息如下:
error LNK2001: 无法解析的外部符号"public: static int
int CButtonMenu ::btnMenuID1 = 0;
在对应的CPP文件中
int CButtonMenu::btnMenuID1 = 0;
不要写在类的函数里面;然后你就可以用了