+ -
当前位置:首页 → 问答吧 → VS2005中的宏重复定义的Warning

VS2005中的宏重复定义的Warning

时间:2007-07-09

来源:互联网

最近使用VS2005,新建任意一个MFC   Application工程,并使用默认参数
进行工程的创建,然后进入工程,编译,总会报下面的warning

Deleting   intermediate   and   output   files   for   project   'test ',   configuration   'Debug|Win32 '
Compiling...
stdafx.cpp
d:\microsoft   visual   studio   8\vc\atlmfc\include\afx.h(13)   :   warning   C4005:   '_AFXDLL '   :   macro   redefinition
                command-line   arguments   :   see   previous   definition   of   '_AFXDLL '
Compiling...

请高手指导一下如何避免这个warning。

  以上
谢谢

作者: snerix   发布时间: 2007-07-09

自己顶

作者: snerix   发布时间: 2007-07-09

自己解决这个问题了

方法如下:
1.在afx.h中的定义中更改

#define   _AFXDLL

改为:
#ifndef
#define   _AFXDLL
#endif
重新编译,问题解决


方法2:
在编译选项中选择
Use   Standard   Windows   Libraries
重新编译,问题解决

作者: snerix   发布时间: 2007-07-09

别写错了,呵呵
#ifndef   _AFXDLL
#define   _AFXDLL
#endif

作者: TonyWJ   发布时间: 2007-07-09

#pragma   warning(disable:4005)

作者: bluebohe   发布时间: 2007-07-09

C/C++ code

#ifndef _AFXDLL
#define _AFXDLL
#endif


感谢楼主

作者: nieanan3602   发布时间: 2011-12-05