Espacios de nombres
Variantes
Acciones

Palabras clave de C++: module (desde C++20)

De cppreference.com
< cpp‎ | keyword
 
 
Lenguaje C++
Temas generales
Control de flujo
Instrucciones de ejecución condicionales
Instrucciones de iteración (bucles)
Declaraciones de salto
Funciones
Declaración de funciones
Declaración de funciones lambda
Especificador inline
Especificación de excepciones (hasta C++20)
Especificador noexcept (C++11)
Excepciones
Espacios de nombres
Tipos
Especificadores
decltype (C++11)
auto (C++11)
alignas (C++11)
Especificadores de duración de almacenamiento
Inicialización
Expresiones
Representaciones alternas
Literales
Booleanos - Enteros - De punto flotante
De carácter - De cadena - nullptr (C++11)
Definidos por el usuario (C++11)
Utilidades
Atributos (C++11)
Tipos
Declaración de typedef
Declaración de alias de tipo (C++11)
Conversiones
Conversiones implícitas - Conversiones explícitas
static_cast - dynamic_cast
const_cast - reinterpret_cast
Asignación de memoria
Clases
Propiedades de funciones específicas de la clase
Funciones miembro especiales
Plantillas
Misceláneos
 
 

[editar] Uso

[editar] Ejemplo

module;            // comienza un fragmento de módulo global
 
#include <string>
 
export module foo; // termina un fragmento de módulo global
                   // declara la unidad de interfaz de módulo primaria para el módulo denominado 'foo'
                   // comienza el alcance o extensión de una unidad de módulo
 
export std::string f();
 
module :private;   // termina la porción de la unidad de interfaz de módulo que
                   // puede afectar el comportamiento de otras unidades de traducción
                   // comienza un fragmento de módulo privado
 
std::string f()
{
    return "foo";
}