我们可以将 C++ 标准编译与 MSVC 混合使用吗?

问题描述

我认为 gcc 正在尝试支持 this

但是,我找不到任何关于 MSVC 的参考。

我的代码库目前基于 c++17 构建。我想在 c++20 中使用新的协程功能,但现在不想迁移所有代码。目标是构建一些具有协程支持的组件。

解决方法

MSVC binary compatibility 的规则适用。对象在版本之间是链接兼容的(只要您不使用链接时代码生成或整个程序优化)。由于该页面没有说明除 /LTCG/GL 之外的任何其他编译器开关违反此承诺,/std: 也不会这样做。