/reference
(Verwenden des benannten Moduls IFC)
Weist den Compiler an, eine vorhandene IFC (.ifc
) für die aktuelle Kompilierung zu verwenden.
Syntax
/reference
module-name=filename
/reference
filename
Argumente
filename
Der Name einer Datei, die IFC-Daten enthält, die vordefinierte Modulinformationen sind. Um mehrere Module zu importieren, fügen Sie eine separate /reference
Option für jede Datei hinzu.
module-name
Ein gültiger Name eines exportierten Primären Modul-Schnittstelleneinheitsnamens oder vollständiger Modulpartitionsname.
Hinweise
In den meisten Fällen müssen Sie diesen Switch nicht angeben, da das Projektsystem Modulabhängigkeiten innerhalb einer Lösung automatisch erkennt.
Für die /reference
Compileroption müssen Sie die /std:c++20
Compileroption (z /std:c++latest
. B. ) aktivieren. Die /reference
Option ist ab Visual Studio 2019, Version 16.10, verfügbar.
Wenn das /reference
Argument eine filename
ohne Eine module-name
ist, wird die Datei zur Laufzeit geöffnet, um die filename
Argumentnamen eines bestimmten Imports zu überprüfen. Dies kann zu einer langsameren Laufzeitleistung in Szenarien mit vielen /reference
Argumenten führen.
Dies module-name
muss ein gültiger Name der primären Modulschnittstelleneinheit oder vollständiger Modulpartitionsname sein. Beispiele für primäre Modulschnittstellennamen sind:
M
M.N.O
MyModule
my_module
Beispiele für vollständige Modulpartitionsnamen sind:
M:P
M.N.O:P.Q
MyModule:Algorithms
my_module:algorithms
Wenn ein Modulverweis mithilfe eines module-name
Moduls erstellt wird, werden andere Module in der Befehlszeile nicht durchsucht, wenn der Compiler einen Import dieses Namens findet. Beispiel:
cl ... /std:c++latest /reference m.ifc /reference m=n.ifc
Wenn der Compiler im obigen m.ifc
Fall siehtimport m;
, wird nicht durchsucht.
Beispiele
In der folgenden Tabelle sind drei Module aufgeführt:
Modul | IFC-Datei |
---|---|
M |
m.ifc |
M:Part1 |
m-part1.ifc |
Core.Networking |
Networking.ifc |
Die Referenzoptionen, die ein filename
Argument verwenden, sind wie folgt:
cl ... /std:c++latest /reference m.ifc /reference m-part.ifc /reference Networking.ifc
Die zu verwendenden module-name=filename
Referenzoptionen sind wie folgt:
cl ... /std:c++latest /reference m=m.ifc /reference M:Part1=m-part.ifc /reference Core.Networking=Networking.ifc
Siehe auch
/scanDependencies
(Listenmodulabhängigkeiten im Standardformular)
/sourceDependencies:directives
(Auflisten von Abhängigkeiten von Modul- und Headereinheiten)
/headerUnit
(Verwenden der Headereinheit IFC)
/exportHeader
(Erstellen von Headereinheiten)