/translateInclude

此开关指示编译器将 #include 视为 import,用于已内置到标头单元 (.ifc) 文件并在命令行中通过 /headerUnit 指定的头文件。

/scanDependencies/sourceDependencies-directives 一起使用时,编译器会在生成的依赖项文件中将那些既包含在源文件中又在 header-units.json 文件中具有相应条目的标头作为导入的标头单元列出。 此依赖项信息由生成系统用来生成已编译的标头单元 .ifc 文件。 生成标头单元后,编译器会将其视为 import 而不是 #include

只有在指定了 /translateInclude 时,才会查阅 header-units.json 文件。 有关 header-units.json 文件的格式和用途的详细信息,请参阅 header-units.json

如果 header-units.json 文件中未列出 #include 文件,则会将其视为普通的 #include

有关如何使用此开关的示例,请参阅演练:在 Microsoft Visual C++ 中生成和导入标头单元

语法

/translateInclude

备注

/translateInclude 在 Visual Studio 2019 版本 16.10 或更高版本中可用。
/translateInclude 需要 /std:c++20 或更高版本。

在 Visual Studio 中设置此编译器选项

要启用 /translateInclude,请在项目属性对话框中,设置“将包含转换为导入”

  1. 在项目属性页的左侧窗格中,选择“配置属性”>“C/C++”>“常规”。

  2. 将“将包含转换为导入”下拉列表更改为“是”。

    Screenshot of the Property Pages dialog with the Translate Includes to Imports property highlighted.

  3. 选择“确定”或“应用”以保存更改。

另请参阅

/headerUnit(使用标头单元 IFC)
/exportHeader(创建标头单元)
/reference(使用命名模块 IFC)
/scanDependencies
/sourceDependencies-directives
演练:在 Microsoft Visual C++ 中生成和导入标头单元