/reference
(Použití pojmenovaného modulu IFC)
Informuje kompilátor, aby pro aktuální kompilaci použil existující ifc (.ifc
).
Syntaxe
/reference
module-name=filename
/reference
filename
Argumenty
filename
Název souboru, který obsahuje data IFC, což jsou předem připravené informace o modulu. Pokud chcete importovat více než jeden modul, zahrňte pro každý soubor samostatnou /reference
možnost.
module-name
Platný název exportované primární jednotky rozhraní modulu nebo úplný název oddílu modulu.
Poznámky
Ve většině případů nebudete muset tento přepínač zadat, protože systém projektu automaticky zjišťuje závislosti modulů v rámci řešení.
Možnost /reference
kompilátoru vyžaduje povolení nebo novější možnost kompilátoru /std:c++20
(například /std:c++latest
). Tato /reference
možnost je dostupná od sady Visual Studio 2019 verze 16.10.
/reference
Pokud je filename
argument bez argumentu module-name
, soubor se otevře za běhu a ověří názvy argumentů filename
konkrétní import. Výsledkem může být pomalejší výkon modulu runtime ve scénářích s mnoha /reference
argumenty.
Musí module-name
to být platný název jednotky rozhraní primárního modulu nebo úplný název oddílu modulu. Příklady názvů primárních rozhraní modulů:
M
M.N.O
MyModule
my_module
Mezi příklady úplných názvů oddílů modulů patří:
M:P
M.N.O:P.Q
MyModule:Algorithms
my_module:algorithms
Pokud je odkaz na modul vytvořen pomocí příkazu module-name
, ostatní moduly na příkazovém řádku se nedají vyhledat, pokud kompilátor narazí na import tohoto názvu. Například na tomto příkazovém řádku:
cl ... /std:c++latest /reference m.ifc /reference m=n.ifc
Pokud se kompilátor v předchozím případě zobrazí import m;
, neprohledává m.ifc
se.
Příklady
Tyto tři moduly jsou uvedeny v této tabulce:
Modul | Soubor IFC |
---|---|
M |
m.ifc |
M:Part1 |
m-part1.ifc |
Core.Networking |
Networking.ifc |
Možnosti odkazu používající filename
argument by vypadaly takto:
cl ... /std:c++latest /reference m.ifc /reference m-part.ifc /reference Networking.ifc
Možnosti odkazu, které se používají module-name=filename
, by vypadaly takto:
cl ... /std:c++latest /reference m=m.ifc /reference M:Part1=m-part.ifc /reference Core.Networking=Networking.ifc
Viz také
/scanDependencies
(Výpis závislostí modulů ve standardním formátu)
/sourceDependencies:directives
(Výpis závislostí jednotek a modulů hlaviček)
/headerUnit
(Použití hlavičkové jednotky IFC)
/exportHeader
(Vytvoření jednotek záhlaví)