Share via


/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í)