Share via


/internalPartition

Pomocí možnosti kompilátoru /internalPartition můžete zacházet se vstupním souborem jako s interní jednotkou oddílu, což je jednotka implementace oddílu modulu, která nepřispívá k externímu rozhraní modulu.

Syntaxe

/internalPartition filename

Poznámky

Následující příklad ukazuje, jak použít /internalPartition možnost:

Zdrojový soubor m-internals.cpp:

// m-internals.cpp
module m:internals;

void internalFunc() {} // cannot have `export` since this is an internal partition

Zdrojový soubor m.ixx:

// m.ixx
export module m;
import :internals; // Cannot export this partition.

export
void wrapper() { internalFunc(); }

Kompilace tohoto rozhraní:

cl /std:c++latest /internalPartition /c m-internals.cpp

Tuto možnost nelze použít s možností kompilátoru /interface .

/internalPartition je k dispozici v sadě Visual Studio 2019 verze 16.10 nebo novější.
/internalPartition vyžaduje /std:c++20 nebo novější.

Nastavení tohoto parametru kompilátoru ve vývojovém prostředí Visual Studio

Tuto možnost byste normálně neměli nastavit ve vývojovém prostředí sady Visual Studio, pokud pro soubory oddílů nepoužíváte jiné rozšíření. Ve výchozím nastavení systém sestavení použije tuto možnost u souborů, které mají příponu .ixx* .

  1. Pokud chcete možnost použít /internalPartition u souboru explicitně v integrovaném vývojovém prostředí (IDE), vyberte soubor v Průzkumník řešení. Kliknutím pravým tlačítkem otevřete místní nabídku a výběrem možnosti Vlastnosti otevřete dialogové okno Stránky vlastností.

  2. Nastavte rozevírací seznam Konfigurace na Všechny konfigurace. Nastavte rozevírací seznam Platformy na Všechny platformy.

  3. Otevřete stránku vlastností konfigurace>C/C++>Advanced.

  4. Pomocí rozevíracího seznamu upravte vlastnost Compile As na Compile as C++ Module Internal Partition (/internalPartition). Změny uložíte kliknutím na OK nebo Použít .

Viz také

Přehled modulů v jazyce C++
Použití modulů C++ v MSVC z příkazového řádku
Vylepšení shody modulů C++ s MSVC v sadě Visual Studio 2019 16.5