C++ · Avançado · Português · Técnico
módulos
Recurso do C++20 que substitui o #include por import, compilando cada módulo uma vez e exportando só o declarado com export. Reduz tempo de build e vazamento de macros.
Onde usar
Em projetos novos, módulos prometem builds mais rápidos e isolamento de nomes. O suporte depende do compilador e do sistema de build, então ainda é adotado com cautela.
Em código
// ola.cppm
export module ola;
export int dobro(int x) { return 2 * x; }
// main.cpp
import ola;
int main() { return dobro(21); }Exemplos
Migramos o header principal para um módulo.
O módulo exporta só a interface pública.
Cuidado
Não é só trocar include por import: módulos exigem arquivos de interface próprios e suporte do build, como o CMake recente.
Sinônimos
modules
Antônimos
header file