我刚创建一个DLL项目,类写成class AFX_EXT_CLASS CtestdllApp : public CWinApp 可是发现
#define AFX_EXT_CLASS AFX_CLASS_IMPORT 是有效的.
#define AFX_EXT_CLASS AFX_CLASS_EXPORT 是灰的,不可用
导致编译错误,这是怎么回事?我看了别人的程序,#define AFX_EXT_CLASS AFX_CLASS_EXPORT 是有效的.
#define AFX_EXT_CLASS AFX_CLASS_IMPORT 是有效的.
#define AFX_EXT_CLASS AFX_CLASS_EXPORT 是灰的,不可用
导致编译错误,这是怎么回事?我看了别人的程序,#define AFX_EXT_CLASS AFX_CLASS_EXPORT 是有效的.
#ifdef _AFXEXT
#define AFX_EXT_CLASS AFX_CLASS_EXPORT
#define AFX_EXT_API AFX_API_EXPORT
#define AFX_EXT_DATA AFX_DATA_EXPORT
#define AFX_EXT_DATADEF
#else
#define AFX_EXT_CLASS AFX_CLASS_IMPORT
#define AFX_EXT_API AFX_API_IMPORT
#define AFX_EXT_DATA AFX_DATA_IMPORT
#define AFX_EXT_DATADEF
#endif不知道这个_AFXEXT 是在哪里定义了??
1.在项目属性-> C/C++-> Preprocessor--> Preprocessor Definetions中
手动加入_AFXEXT 这个宏.