/internalPartition
Use a opção do compilador /internalPartition
para tratar o arquivo de entrada como uma unidade de partição interna, que é uma unidade de implementação de partição de módulo que não contribui para a interface externa do módulo.
Sintaxe
/internalPartition
filename
Comentários
O exemplo a seguir demonstra como usar a opção /internalPartition
:
Arquivo de origem m-internals.cpp
:
// m-internals.cpp
module m:internals;
void internalFunc() {} // cannot have `export` since this is an internal partition
Arquivo de origem m.ixx
:
// m.ixx
export module m;
import :internals; // Cannot export this partition.
export
void wrapper() { internalFunc(); }
Para compilar essa interface:
cl /std:c++latest /internalPartition /c m-internals.cpp
Essa opção não pode ser usada com a opção do compilador /interface
.
/internalPartition
está disponível no Visual Studio 2019 versão 16.10 ou posterior.
/internalPartition
requer /std:c++20 ou posterior.
Para definir esta opção do compilador no ambiente de desenvolvimento do Visual Studio
Normalmente, você não deve definir essa opção no ambiente de desenvolvimento do Visual Studio, a menos que use uma extensão diferente para seus arquivos de partição. Por padrão, o sistema de compilação aplica essa opção a arquivos que têm uma .ixx
extensão *.
Para aplicar a
/internalPartition
opção a um arquivo explicitamente no IDE, selecione o arquivo no Gerenciador de Soluções. Clique com o botão direito do mouse para abrir o menu de contexto e selecione Propriedades para abrir a caixa de diálogo Páginas de Propriedades.Defina o menu suspenso Configuração como Todas as configurações. Defina o menu suspenso Plataforma como Todas as plataformas.
Abra a página de propriedades Propriedades de Configuração>C/C++>Advanced.
Use o controle suspenso para modificar a propriedade Compilar como para Compilar como partição interna do módulo C++ (/internalPartition). Escolha OK ou Aplicar para salvar as alterações.
Confira também
Visão geral dos módulos no C++
Usar módulos C++ no MSVC da linha de comando
Melhorias na conformidade dos Módulos C++ com o MSVC no Visual Studio 2019 16.5