Espacios de nombres
Variantes
Acciones

Apoyo de compiladores para C++23

De cppreference.com

[editar] Características principales del lenguaje C++23

Característica de C++23
 
Ponencia(s)
 
GCC
Clang
MSVC
Apple Clang
EDG eccp
Intel C++
IBM XLC++
Sun/Oracle C++
Embarcadero C++ Builder
Cray
Portland Group (PGI)
Nvidia nvcc
Sufijo de literal para size_t (con signo) P0330R811 13
Hacer () más opcional para lambdasP1102R211 13 6.3
if constevalP1938R312 14 6.3
Eliminar apoyo para recolección de basura P2186R212
ID: Sintaxis de identificador de C++ usando el estándar Unicode anexo 31 P1949R712 14
ID: Admitir atributos duplicados P2156R111 13
Conversiones contextuales estrechantes en static_assert y constexpr ifP1401R59 13 (parcial)*
14
Recorte de espacios en blanco antes del empalme de línea P2223R2
Hacer obligatorio la distribución del orden de declaración P1847R4
Eliminar el modo mezclado de la concatenación de literales de cadenaP2201R1
Deducir P0847R76.3
auto(x) y auto{x} P0849R812
Cambiar ámbito del tipo de retorno al final de las lambdas P2036R3
#elifdef y #elifndefP2334R112 13
Variables no literal (y etiquetas y gotos) en las funciones constexprP2242R312 6.3
Codificación consistente de literales de carácter P2316R2
Juegos de caracteres y codificaciones P2314R4
Extender la instrucción de inicialización para admitir la declaración de alias P2360R012 14
Operador de índice/subíndice multidimensional P2128R612
Característica de C++23
 
Ponencia(s)
 
GCC
Clang
MSVC
Apple Clang
EDG eccp
Intel C++
IBM XLC++
Sun/Oracle C++
Embarcadero C++ Builder
Cray
Portland Group (PGI)
Nvidia nvcc

[editar] Características de la biblioteca de C++23

Característica de C++23
 
Ponencia(s)
 
GCC libstdc++
Clang libc++
MSVC
Biblioteca Estándar
Apple Clang
Sun/Oracle C++
Biblioteca Estándar
Embarcadero C++ Builder
Biblioteca Estándar
Cray C++
Biblioteca Estándar
Biblioteca de listado de pilaP0881R7P2301R1
<stdatomic.h>P0943R619.31*
std::is_scoped_enumP1048R111 12 19.30*
basic_string::contains(), basic_string_view::contains()P1679R311 12 19.30*
std::to_underlyingP1682R311 13 19.30*
Relajar los requerimientos para time_point<>::clockP2212R2N/AN/A
ID: std::visit() para clases derivadas de std::variantP2162R212 13 19.20**
19.30*
ID: Rangos prestados condicionalmente P2017R111 19.30*
ID: Reparación de los adaptadores de rangos de entrada y std::counted_iteratorP2259R112 19.30*(parcial)*
19.31*
Proporcionar retralimentación del tamaño en la interfaz de Allocator P0401R619.30*
<spanstream> : string-stream con un búfer basado en std::spanP0448R412 19.31*
std::out_ptr(), std::inout_ptr()P1132R819.30*
constexprtype_info::operator==()P1328R112
Constructores con un par de iteradores para std::stack y std::queueP1425R412 14 19.31*
Contextos de no-deducción para asignadores de memoria en las guías de deducción de los contenedores P1518R213 19.31*
ranges::starts_with() y ranges::ends_with()P1659R312
Prohibición de la construcción de std::basic_string y std::basic_string_view a partir de nullptrP2166R112 13 19.30*
std::invoke_r()P2136R312 19.31*
Constructor de rango para std::basic_string_viewP1989R211 14 19.30*
Argumentos de plantilla por defecto para el constructor de reenvío de pairP1951R112 14 19.30*
Eliminar recolección de basura y detección de fugas basada en alcance (apoyo de la biblioteca) P2186R212 14 19.30*
ID: join_view debería unir todas las vistas de los rangos P2328R111.2 19.30*
ID: view no requiere default_initializableP2325R312 19.30*
ID: Los objetos de adaptador de rango vinculan los argumentos por valor P2281R111 19.29 (16.10)*
(parcial)*
19.31*
ID: constexpr para std::optional y std::variantP2231R112 13 (parcial)*19.31*
ID: Mejoras a std::format()P2216R314 (parcial)*19.32*
ID: lazy_split_view y rediseño de split_viewP2210R212 19.31*
zip P2321R2
Sobrecargas de borrado heterogéneo para contenedores asociativos P2077R319.32*
std::byteswap()P1272R412 14 19.31*
Imprimirvolatile T*P1147R112 14 19.31*
basic_string::resize_and_overwrite()P1072R1012 14 19.31*
Operaciones monádicas para std::optionalP0798R812 14 19.32*
std::move_only_functionP0288R912 19.32*
Añadir una especificación noexcept condicional a std::exchangeP2401R012 14 19.25*
Requerir que span y basic_string_view sean TriviallyCopyableP2251R1
Clarificar el estado de los “encabezados de C” P2340R1
ID: Corregir ranges::istream_viewP2432R112 19.31*
ID: Añadir apoyo para los tipos formateables no const a std::formatP2418R2
ID: Qué es una vista (view) P2415R214 19.31*
ID: Corregir el manejo de la configuración regional en los formateadores de chrono P2372R319.31*
ID: Limpieza de los tipos enteros P2393R1
Característica de C++23
 
Ponencia(s)
 
GCC libstdc++
Clang libc++
MSVC
Biblioteca Estándar
Apple Clang
Sun/Oracle C++
Biblioteca Estándar
Embarcadero C++ Builder
Biblioteca Estándar
Cray C++
Biblioteca Estándar
close