Visual Studio 2022 Preview 使用 C++20 Module的详细过程

 更新时间:2021年09月22日 10:53:59   作者:孤雲独去闲  
这篇文章主要介绍了Visual Studio 2022 Preview 使用 C++20 Module的过程,本文通过项目分析实例代码相结合给大家介绍的非常详细,需要的朋友可以参考下

        作为C++20的一大特性,据说Module能够大大加快项目的编译速度,最近正好看到微软推出了Visual Studio 2022 预览版,随附了面向 C++20 的最新工具链,赶紧拿来体验一下。

        体验项目很简单,就两个小文件:

        1. hello.ixx

export module mo.hello.cpp;
 
export auto hello()
{
	return "hello cpp module";
}

        2. main.cpp

import mo.hello.cpp;
import std.core;
 
int main()
{
	std::cout << hello() << std::endl;
	return 0;
}

        结果编译报错,这错误比写的整个代码都长

         这是因为VS2022默认的C++语言标准还是C++14, 需要修改为最新的,在解决方案资源管理器中,右击项目,选择属性,进入属性设置页:

 在属性页中选择 配置属性 -- 常规 -- C++语言标准 -- 预览-最新C++

         应用后继续编译,这次出现了新的错误

        这次是因为----从2019版16.2 版的 Visual Studio,模块未在 Microsoft c + + 编译器中完全实现。 你可以使用模块功能创建单分区模块,并导入 Microsoft 提供的标准库模块。 若要启用对模块的支持,请使用 /experimental: module 和 /std: c + + 最新版本进行编译。 在 Visual Studio 项目中,右键单击 解决方案资源管理器 中的项目节点,然后选择 "属性"。 将 配置 下拉设置为 "所有配置",然后选择 "配置属性" " > c/c + + > 语言" " > 启用 c + + 模块 (试验性)----从2019试验到2022了,还没试验完呢,设置一下吧

         应用后再次编译,成功了!!!

到此这篇关于Visual Studio 2022 Preview 使用 C++20 Module的文章就介绍到这了,更多相关Visual Studio 2022 Preview 内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 详解C语言中的rename()函数和remove()函数的使用方法

    详解C语言中的rename()函数和remove()函数的使用方法

    这篇文章主要介绍了详解C语言中的rename()函数和remove()函数的使用方法,是C语言入门学习中的基础知识,需要的朋友可以参考下
    2015-09-09
  • C语言实现三子棋

    C语言实现三子棋

    这篇文章主要为大家详细介绍了C语言实现三子棋,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-11-11
  • Inline Hook(ring3)的简单C++实现方法

    Inline Hook(ring3)的简单C++实现方法

    这篇文章主要介绍了Inline Hook(ring3)的简单C++实现方法,需要的朋友可以参考下
    2014-08-08
  • Qt中QZXing 的编译与使用

    Qt中QZXing 的编译与使用

    本文主要介绍了Qt中QZXing 的编译与使用,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-01-01
  • Qt实现输出日志到指定文件的操作方法

    Qt实现输出日志到指定文件的操作方法

    这篇文章主要介绍了Qt实现输出日志到指定文件的操作方法,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧
    2024-07-07
  • C语言数据输入与输出实例详解

    C语言数据输入与输出实例详解

    这篇文章主要介绍了C语言数据输入与输出实例详解的相关资料,需要的朋友可以参考下
    2017-06-06
  • Visual C++ 6.0实现域名解析为IP的示例代码

    Visual C++ 6.0实现域名解析为IP的示例代码

    本文主要介绍了在Windows环境下,使用Visual C++ 6.0(VC6)编译器,通过Winsock库调用DNS服务完成域名到IP地址的转换,具有一定的参考价值,感兴趣的可以了解一下
    2025-03-03
  • 使用C语言实现交换整数的奇数位和偶数位

    使用C语言实现交换整数的奇数位和偶数位

    在C语言中,要交换一个整数的二进制位中的奇数位和偶数位,重点需要理解位操作,当我们谈论二进制位的奇数位和偶数位时,我们是指从右到左数的位置,本文给大家介绍了使用C语言代码实现将一个整数的奇数位和偶数位交换,需要的朋友可以参考下
    2025-03-03
  • C++ const关键字的实例用法

    C++ const关键字的实例用法

    在本篇文章里小编给大家整理的是一篇关于C++ const关键字的实例用法,需要的朋友们可以学习下。
    2020-02-02
  • Linux网络编程之UDP Socket程序示例

    Linux网络编程之UDP Socket程序示例

    这篇文章主要介绍了Linux网络编程之UDP Socket程序示例,有助于读者在实践中掌握UDP协议的原理及应用方法,需要的朋友可以参考下
    2014-08-08

最新评论