首页 > 解决方案 > 如何从另一个目录导入 C++20 模块?

问题描述

我正在尝试使用 C++20 的模块功能,因为 MSVC 和 GCC11 现在有点支持它。使用头文件,我们可以将头文件的相对/完整路径包含在内。但是我们如何导入位于源文件之外的其他文件夹中的模块呢?Visual Studio 中是否还有一个选项可以包含导入路径或其他内容?

标签: c++visual-studioc++20

解决方案


来自Visual Studio 中的 C++ 模块之旅(感谢 JHBonarius):

您的代码可以自动使用同一项目中的模块或任何引用的模块(使用对静态库项目的项目到项目引用)。

还可以引用磁盘上存在的模块,而不是解决方案中属于另一个项目的模块。但是,这里需要小心,因为模块是编译的二进制文件。您必须确保它们与您构建项目的方式兼容。

您可以通过编辑 Additional Module Dependencies 属性告诉 Visual Studio 在磁盘上查找模块:

配置属性 >> C++ >> 常规 >> 附加模块依赖


推荐阅读