如何在Intel的Windows编译器的命令行上禁用C++ 0x和/或C++ 11?

 mobiledu2502898473 发布于 2023-02-13 19:13

我的跨平台项目上的构建系统有一个英特尔Windows C++命令行,由于检测到编译器功能集,可能有也可能没有/ Qstd = c ++ 0x.对于大多数代码库,这很好用,但是对于少量的CUDA文件,我需要禁用更新的C++方言以适应nvcc包装器编译器的约束.

我应该如何在命令行的末尾添加类似/ Qstd = c ++ 98或/ Qnostd = c ++ 0x的内容,以便它覆盖任何早期的C++方言规范?

编辑:经过教育,这些标志实际上是英特尔编译器,我发现附加/ Qstd = c ++ 98可能是正确的方法.

1 个回答
  • 你不能为MSVC.每个MSVC版本都希望自己对两个或三个标准之间的某些内容进行解释,而您却坚持使用它.

    您引用的选项适用于英特尔编译器(请参阅此处).如果可能的话,我建议使用英特尔编译器.

    我没有看到如何禁用C++编译器中最近的方言将取悦nvcc包装器编译器...只是不要编写C++ 11代码,你会好吗?

    2023-02-13 19:15 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有