Namespaces
Variants

Basic concepts

From cppreference.net
C++ language
General topics
Flow control
Conditional execution statements
Iteration statements (loops)
Jump statements
Functions
Function declaration
Lambda function expression
inline specifier
Dynamic exception specifications ( until C++17* )
noexcept specifier (C++11)
Exceptions
Namespaces
Types
Specifiers
constexpr (C++11)
consteval (C++20)
constinit (C++20)
Storage duration specifiers
Initialization
Expressions
Alternative representations
Literals
Boolean - Integer - Floating-point
Character - String - nullptr (C++11)
User-defined (C++11)
Utilities
Attributes (C++11)
Types
typedef declaration
Type alias declaration (C++11)
Casts
Memory allocation
Classes
Class-specific function properties
Special member functions
Templates
Miscellaneous

Esta sección proporciona definiciones para la terminología específica y los conceptos utilizados al describir el lenguaje de programación C++.

Un programa en C++ es una secuencia de archivos de texto (típicamente archivos de cabecera y código fuente) que contienen declaraciones . Estos pasan por un proceso de traducción para convertirse en un programa ejecutable, el cual se ejecuta cuando la implementación de C++ llama a su función main .

Ciertas palabras en un programa de C++ tienen un significado especial, y estas se conocen como keywords . Otras pueden usarse como identifiers . Comments se ignoran durante la traducción. Los programas de C++ también contienen literals , los valores de los caracteres dentro de ellos están determinados por character sets and encodings . Ciertos caracteres en el programa deben representarse con escape sequences .

Las entidades de un programa C++ son valores, objetos , referencias , structured bindings (desde C++17) , result bindings (desde C++26) , funciones , enumeradores , tipos , miembros de clase, plantillas , especializaciones de plantillas , packs (desde C++11) , y espacios de nombres . Las macros del preprocesador no son entidades de C++.

Declarations pueden introducir entidades, asociarlas con names y definir sus propiedades. Las declaraciones que definen todas las propiedades requeridas para usar una entidad son definitions . Un programa debe contener solo una definition de cualquier función no inline o variable que sea odr-used .

Las definiciones de funciones generalmente incluyen secuencias de statements , algunos de los cuales incluyen expressions , que especifican los cálculos a realizar por el programa.

Los nombres encontrados en un programa se asocian con las declaraciones que los introdujeron mediante name lookup . Cada nombre es válido únicamente dentro de una parte del programa llamada su scope . Algunos nombres tienen linkage que hace que se refieran a las mismas entidades cuando aparecen en diferentes scopes o unidades de traducción.

Cada objeto, referencia, función, expresión en C++ está asociado con un tipo , que puede ser fundamental , compuesto, o definido por el usuario , completo o incompleto , etc.

Los objetos declarados y las referencias declaradas que no son non-static data members son variables  .

Véase también

Documentación de C para Conceptos básicos