使用Visual Studio 2017 C++17模块(module)特性

时间:2025-04-15 08:37:55

环境:

  win7_x64旗舰版、VS2017企业版

一、安装VS2017

  1.1 安装VS2017时,必须要勾选“使用C++的modules开发”选项

  1.2 安装成功后,会在VS安装目录Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.10.25017生成ifc文件夹

二、创建和配置项目

  2.1 创建Win32控制台项目

使用Visual Studio 2017 C++17模块(module)特性

  2.2 添加module.cpp文件内容

// module.cpp : 定义控制台应用程序的入口点。
// #include "stdafx.h" import std.core;
import M; using namespace M; int main()
{
std::vector<int> vec;
std::list<int> list;
vec.push_back(); int temp = M::test();
printf("%d\n", temp); return ;
}

  2.3 添加自定义导出模块源文件export_module.cpp

namespace M {

    int test(int x)
{
return + x;
} }

  2.4 添加导出命令export_module.bat

@echo off
cl /c /experimental:module /module:name M /module:export export_module.cpp

  将export_module.cpp文件内容导出为M模块,会生成M.ifc文件

三、配置项目

  3.1 配置STL module相关搜索路径

  使用Visual Studio 2017 C++17模块(module)特性

  3.2 添加附加库目录

  使用Visual Studio 2017 C++17模块(module)特性

  3.3 添加附加库依赖

  使用Visual Studio 2017 C++17模块(module)特性

  3.4 添加自定义模块导出脚本export_module.bat

使用Visual Studio 2017 C++17模块(module)特性

四、运行结果

使用Visual Studio 2017 C++17模块(module)特性

最后的Demo下载地址:module.zip