当前位置: 首页 > article >正文

cmake如何在编译时区分-std=c++17和-std=gnu++17?检查宏

如何在编译时区分-std=c++17和-std=gnu++17?检查宏?-腾讯云开发者社区-腾讯云

我正在使用__int128扩展的g++。-std=c++17的问题是,一些C++库不具备对该扩展的全部支持(即std::make_unsigned<>失败)。当使用-std=gnu++17时,它工作得很好。

我添加了一个头文件,允许<limit>在使用-std=c++17时与__int128一起工作,我希望暂时保留它,但是在使用-std=gnu++17时它会中断(因为它已经定义好了)。所以我想增加一个这样的条件:

# -std=gnu++17 
set(CMAKE_CXX_STANDARD 17)
或者
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++17")


http://www.kler.cn/news/336202.html

相关文章:

  • Elasticsearch从入门到精通
  • k8s 中的金丝雀发布(灰度发布)
  • OpenAI o1 与 GPT-4o:前沿AI全面比较下你更倾向哪一款
  • 论文笔记:Anytime Continual Learning for Open Vocabulary Classification
  • react-问卷星项目(7)
  • 【Ubuntu】使用阿里云apt源来更新apt源
  • 8位单片机与32位单片机
  • 软考系统分析师知识点三:应用数学
  • 探索《文明发展模拟器》:从零开始构建文明的进化之路
  • ElementUI 2.x 输入框回车后在调用接口进行远程搜索功能
  • [Linux] 进程创建、退出和等待
  • Python知识点:如何应用Python工具,使用NLTK进行语言模型构建
  • 每日英语听力 Day13
  • Python技术深度探索:从基础到进阶的实践之旅(第一篇)
  • RabbitMQ入门3—virtual host参数详解
  • updatedb命令:更新locate数据库
  • 频繁full gc问题排查及解决
  • JavaScript 中的变量作用域
  • 基于epoll的Reactor模型
  • 面试系列-淘天提前批面试