c++编译第三方项目报错# pragma warning( disable: 4273)

因为我是使用mingw在windows平台上编译的,而在代码里是这样的:

cpp 复制代码
#if defined(_WIN32)

就是因为mingw无法使用msvc的progma语句导致的,我在项目中搜也没有找到定义该宏的地方,于是上网去搜,才发现这是一个平台的宏,而非编译器宏。

正确的答案是这样的:

cpp 复制代码
#if defined(_MSC_VER)

使用msvc的宏来判断,这样更精确一些,代表的是编译器。

而mingw的编译器宏应该是

cpp 复制代码
#elif defined(__GNUC__)
相关推荐
星辰烈龙4 分钟前
黑马程序员Java基础9
java·开发语言
SHERlocked9318 分钟前
摄像头 RTSP 流视频多路实时监控解决方案实践
c++·后端·音视频开发
@游子22 分钟前
Python类属性与魔术方法全解析
开发语言·python
tang&1 小时前
哈希碰撞攻防战:C++闭散列与开散列实现全解析
c++·哈希算法
眠りたいです1 小时前
现代C++:C++11并发支持库
开发语言·c++·多线程·c++11·c++并发支持库
小灰灰搞电子1 小时前
Rust可以取代C++么?
开发语言·c++·rust
cat三三1 小时前
java之异常
java·开发语言
奇树谦1 小时前
【Qt实战】实现图片缩放、平移与像素级查看功能
开发语言·qt
我命由我123451 小时前
Python Flask 开发问题:ImportError: cannot import name ‘Markup‘ from ‘flask‘
开发语言·后端·python·学习·flask·学习方法·python3.11
wjs20241 小时前
Go 语言指针
开发语言