【问题标题】:Can we mix c++ standard compile with MSVC?我们可以将 c++ 标准编译与 MSVC 混合使用吗?
【发布时间】:2021-05-19 07:10:54
【问题描述】:

我认为 gcc 正在尝试支持this

但是,我找不到任何有关 MSVC 的参考资料。

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

【问题讨论】:

  • 这是一个有趣的问题,但最好编辑并提供您的真实用例。
  • 我的代码库目前基于 c++17 构建。我想在 c++20 中使用新的协程功能,但现在不想迁移所有代码。目标是构建一些支持协程的组件。
  • 您可以使用edit将您的评论添加到原始帖子中。
  • MSVC 在 2015 年、2017 年和 2019 年之间与 ABI 兼容。这些版本之间没有 ABI 更改。因此,我不明白为什么不能这样做。 docs.microsoft.com/en-us/cpp/porting/…

标签: c++ visual-c++


【解决方案1】:

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

【讨论】:

    猜你喜欢
    • 2021-06-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-08
    • 2023-03-09
    相关资源
    最近更新 更多