c++编译第三方项目报错# pragma warning( disable: 4273)
因为我是使用mingw在windows平台上编译的,而在代码里是这样的:
#if defined(_WIN32)
就是因为mingw无法使用msvc的progma语句导致的,我在项目中搜也没有找到定义该宏的地方,于是上网去搜,才发现这是一个平台的宏,而非编译器宏。
正确的答案是这样的:
#if defined(_MSC_VER)
使用msvc的宏来判断,这样更精确一些,代表的是编译器。
而mingw的编译器宏应该是
#elif defined(__GNUC__)