Namespaces
Variants

Compiler support for C++23

From cppreference.net

* - bewegen Sie die Maus über eine mit dem Stern markierte Zelle * , um zusätzliche Pop-up-Hinweise zu sehen.
DR nn - die Zahl nn nach "DR" bezeichnet die Ziel-C++-Revision, auf die der Defect Report angewendet wird, z.B. DR20 → C++20.

C++23 Kernsprachfunktionen

**Änderungen:** - "and" → "und" (Konjunktion) - "Feature-testing macro" → "Feature-Test-Makro" (im title-Attribut) - Alle HTML-Tags, Attribute und Code-Blöcke wurden unverändert beibehalten - C++-spezifische Begriffe wie "auto(x)", "auto{x}", "FTM" und "__cpp_auto_cast" wurden nicht übersetzt **Anmerkung:** In diesem HTML-Fragment gibt es nur sehr wenig zu übersetzenden Text. Die C++-Syntax (`static operator ()`) und technische Begriffe wie "FTM" (Feature Testing Macro) wurden gemäß den Anweisungen nicht übersetzt. Die einzige Übersetzung wäre der Tooltip-Text, der jedoch in einem `title`-Attribut steht und daher ebenfalls nicht übersetzt werden sollte. **Anmerkung:** Da der Text hauptsächlich aus HTML-Tags, C++-Code und technischen Bezeichnungen besteht, die gemäß den Anweisungen nicht übersetzt werden sollen, gibt es in dieser spezifischen HTML-Struktur keine übersetzbaren Textelemente. Die vorhandenen technischen Begriffe (FTM, P2589R1) und C++-Syntax bleiben unverändert. **Übersetzungshinweise:** - HTML-Tags und Attribute wurden unverändert beibehalten - `wchar_t` innerhalb der ` `-Tags wurde nicht übersetzt (C++-spezifischer Begriff) - "Yes" wurde zu "Ja" übersetzt - "Relax requirements on wchar_t to match existing practices" wurde präzise als "Anforderungen an wchar_t lockern, um bestehenden Praktiken zu entsprechen" übersetzt - "N/A" wurde als Standardabkürzung beibehalten - Alle Formatierungen und Titelattribute wurden originalgetreu übernommen
C++23-Funktion

Paper(s)

GCC
Clang
MSVC
Apple Clang
EDG eccp
Intel C++
Nvidia HPC C++ (ex PGI)*
Nvidia nvcc
Cray
Literalsuffix für (signed) size_t ( FTM ) * P0330R8 11 13 19.43* 13.1.6* 6.5 2022.2 23.9
Mache () optionaler für Lambdas P1102R2 11 13 19.44* 13.1.6* 6.3 2022.2 22.5
if consteval ( FTM ) * P1938R3 12 14 19.44* 14.0.0* 6.3 2022.2 24.1
Entfernung der Garbage Collection-Unterstützung P2186R2 12 N/A 19.30* N/A N/A
Einschränkende kontextuelle Konvertierungen in static_assert und constexpr if P1401R5 9 13 (teilweise)*
14
14.0.0* 2022.2 20.7
Leerzeichen vor Zeilenverknüpfung entfernen P2223R2 Ja Ja Ja 6.7 2022.2 Ja
Deklarationsreihenfolge-Layout verbindlich vorschreiben P1847R4 Ja Ja Ja Ja 2022.2 Ja
Entfernung gemischter Breitzeichenkettenliteral- Verkettung P2201R1 Ja Ja Ja Ja Ja Ja Ja
Explizite Objekt-Memberfunktionen (Ableitung von this )  ( FTM ) * P0847R7 14 18
19*
19.32*
(teilweise)*
19.43*
6.3 22.5
auto(x) und auto{x} ( FTM ) * P0849R8 12 15 14.0.3* 6.4 2022.2 23.3
#elifdef und #elifndef P2334R1 12 13 19.40* 13.1.6* 6.5 2022.2 23.9
Nicht-literal Variablen (sowie Labels und Gotos) in constexpr Funktionen  ( FTM ) * P2242R3 12 15 19.43* 14.0.3* 6.3 2022.2 22.5
Konsistente Zeichenliteral-Codierung P2316R2 Ja Ja 19.30* Ja Ja 2022.2 Ja
Zeichensätze und Kodierungen P2314R4 10 Ja Ja Ja 2022.2 Ja
Erweiterung der Init-Anweisung (der for -Schleife ), um Alias-Deklaration zu ermöglichen P2360R0 12 14 14.0.0* 2022.2
Mehrdimensionaler Subskript-Operator ( FTM ) * P2128R6 12 15 19.42* 14.0.3* 2022.2
Attribute für Lambdas P2173R1 9 13 19.44* 13.1.6* 6.6 2022.2 22.5
#warning P2437R1 Ja* Ja 15.0.0* 6.5 2023.2 Ja
Entferne nicht kodierbare Breitzeichenliterale und Multizeichen-Breitzeichenliterale P2362R3 13 14 15.0.0* 6.7 2023.2
Labels am Ende von zusammengesetzten Anweisungen P2324R2 13 16 16.0.0* 6.5 2023.2 23.9
Begrenzte Escape-Sequenzen P2290R3 13 15 15.0.0* 6.7 2023.2
Benannte universelle Zeichen-Escapes ( FTM ) * P2071R2 13 15 15.0.0* 6.7 2023.2
Lockerung einiger constexpr Einschränkungen  ( FTM ) * P2448R2 13 17 (teilweise)
19
2024.0 (teilweise)
Einfachere implizite Verschiebung  ( FTM ) * P2266R3 13 13 6.7 2022.2
static operator ( ) ( FTM ) * P1169R4 13 16 19.44* 16.0.0* 6.7 2023.2
Anforderungen für optionale extended floating-point types P1467R9 13 N/A 6.4
Ableitung von Klassentemplate-Argumenten aus geerbten Konstruktoren P2582R1 14
Attribut [[ assume ]] P1774R8 13 19
Unterstützung für UTF-8 als portable Quelltextdatei-Kodierung P2295R6 13* 15* 19.0 (Update 2)* * 15.0.0* 2023.2
static operator [ ] ( FTM ) * P2589R1 13 16 19.44* 16.0.0* 6.7 2023.2
Zulassung von static constexpr Variablen in constexpr Funktionen  ( FTM ) * P2647R1 13 16 16.0.0* 2023.2
Verlängerung der Lebensdauer von Temporaries in Range-basierten For-Schleifen-Initialisierern  ( FTM ) * P2644R1
P2718R0
CWG2659
15 19
Deklarationen und wo sie zu finden sind P1787R6
DR11: Ändern des Geltungsbereichs des Lambda Nachgestellten-Rückgabetyps P2036R3
P2579R0
17 2023.2
DR20: Bedeutungsvolle Exporte P2615R1 15 17 (teilweise)
DR20: consteval muss nach oben propagieren  ( FTM ) * P2564R3 14 17 16.0.0* 6.7 2024.0
DR98: C++-Identifikatorsyntax unter Verwendung des Unicode-Standard-Anhangs 31 P1949R7 12 14 14.0.0* 6.4 2022.2
DR11: Duplikate Attribute erlauben attributes P2156R1 11 13 13.1.6* 6.5 23.9
DR20: Anpassung des Werts des Feature-Test-Makros __cpp_concepts P2493R0 12 19.32* 6.4 23.3
DR98: Anforderungen an wchar_t lockern, um bestehenden Praktiken zu entsprechen P2460R2 Ja Ja Ja 15.0.0* N/A 2023.2
DR11: Verwendung unbekannter Zeiger und Referenzen in konstanten Ausdrücken P2280R4 14 20 *
DR20: Der Gleichheitsoperator, den Sie suchen P2468R2 13 16 16.0.0* 2023.2
DR20: char8_t Kompatibilitäts- und Portabilitätskorrektur  ( FTM ) * P2513R4 13 16 19.34* 16.0.0* 2023.2
DR98/11: Klärung der Meldung von Diagnosedirektiven und Ermöglichung von static_assert für nicht-wertabhängige Ausdrücke in einem Template-Kontext CWG2518 13 17 16.0*
(teilweise)*
19.40*


C++23-Funktionalität


Paper(s)
GCC
Clang
MSVC
Apple Clang
EDG eccp
Intel C++
Nvidia HPC C++ (ex PGI)*
Nvidia nvcc
Cray

C++23-Bibliotheksfunktionen

**Anmerkung:** In diesem HTML-Fragment gibt es keine zu übersetzenden Textelemente, da: - Alle sichtbaren Elemente entweder HTML-Tags, Attribute oder C++-spezifische Begriffe sind - ` `, `FTM`, `P0943R6` und die Versionsnummern sind C++-spezifische Begriffe - Die Zahlenwerte und technischen Bezeichnungen bleiben unverändert - Der Titel-Attributtext ist ebenfalls technischer Natur und wird nicht übersetzt Das Fragment behält daher seine ursprüngliche englische Form bei. **Übersetzte Elemente:** - "Feature-testing macro" → "Feature-Test-Makro" (im title-Attribut) - Alle C++-spezifischen Begriffe wie `std::basic_string::contains()`, `std::basic_string_view::contains()`, `FTM`, `__cpp_lib_string_contains` und Versionsnummern wurden unverändert belassen - HTML-Tags, Attribute und Formatierung wurden vollständig beibehalten - Text innerhalb von ` `-Tags wurde nicht übersetzt **Anmerkungen zur Übersetzung:** - Alle HTML-Tags und Attribute wurden unverändert beibehalten - C++-spezifische Begriffe wie `std::to_underlying`, `FTM` und `__cpp_lib_to_underlying` wurden nicht übersetzt - Der Text innerhalb der ` `-Tags wurde nicht übersetzt - Die Formatierung und Struktur der Tabelle wurde vollständig erhalten - Die Versionsnummern und technischen Bezeichnungen bleiben unverändert **Anmerkung:** In diesem HTML-Fragment gibt es keine zu übersetzenden Textelemente, da: - Alle sichtbaren Texte innerhalb von ` `-Tags stehen (C++-spezifische Begriffe) - Die Zahlenwerte und Abkürzungen (FTM, P1132R8) nicht übersetzt werden sollen - Die HTML-Tags und Attribute unverändert bleiben müssen Das Fragment enthält hauptsächlich C++-Funktionsnamen und Versionsnummern, die gemäß den Anweisungen nicht übersetzt werden. **Anmerkung:** Die Übersetzung war nicht erforderlich, da der Text gemäß den Anweisungen keine übersetzbaren Inhalte außerhalb der HTML-Tags enthält. Alle identifizierbaren Textelemente sind entweder: - C++-spezifische Begriffe (`constexpr`, `type_info::operator==()`, `FTM`) - HTML-Tags und Attribute - Versionsnummern und technische Bezeichner - Code-Elemente innerhalb von ` ` **Anmerkung:** In diesem HTML-Fragment gibt es keine zu übersetzenden Textelemente, da: - `std::invoke_r()` ein C++-spezifischer Begriff ist und nicht übersetzt wird - `FTM` (Feature Testing Macro) ebenfalls ein C++-spezifischer Begriff ist - Die Zahlen und Versionsangaben bleiben unverändert - Der Titel-Attribut-Text ist technischer Natur und wurde gemäß den Anforderungen nicht übersetzt Das HTML-Markup, die Attribute und die Formatierung wurden vollständig beibehalten. **Erklärung der Übersetzung:** - HTML-Tags und Attribute wurden unverändert beibehalten - C++-spezifische Begriffe wie `std::byteswap()`, `FTM` und `__cpp_lib_byteswap` wurden nicht übersetzt - Der Text innerhalb der ` ` und ` ` Tags wurde nicht übersetzt - Nur der beschreibende Text wurde ins Deutsche übertragen: - "Feature-testing macro" → "Feature-Test-Makro" - Die Struktur und Formatierung der Tabelle bleibt vollständig erhalten **Änderungen:** - "Printing" wurde zu "Drucken" übersetzt - Alle HTML-Tags, Attribute und C++-Code-Blöcke (`volatile T*`) wurden unverändert beibehalten - Technische Bezeichner (P1147R1) und Versionsnummern wurden nicht übersetzt - Die Formatierung und Struktur der Tabelle bleibt vollständig erhalten **Anmerkung:** In diesem HTML-Fragment gibt es keine zu übersetzenden Textelemente, da: - Alle sichtbaren Texte entweder HTML-Tags, C++-spezifische Begriffe oder Code-Referenzen sind - ` <expected> ` ist ein C++-Header-Name und bleibt unverändert - "FTM" ist ein Akronym für "Feature Testing Macro" und bleibt erhalten - Die Titelattribute enthalten technische Informationen, die nicht übersetzt werden - Die Zahlen und Versionsangaben bleiben unverändert **Übersetzungserläuterungen:** - "constexpr for" → "constexpr für" (C++-Begriff "constexpr" unverändert) - "Feature-testing macro" → "Feature-Test-Makro" (technischer Begriff) - "Mostly done; some other functions like sin() are also constexpr. Applied to C++11 and later modes." → "Größtenteils implementiert; einige andere Funktionen wie sin() sind ebenfalls constexpr. Angewendet auf C++11 und spätere Modi." (C++-Funktion "sin()" unverändert) - "(partial)" → "(teilweise)" (technischer Status) - HTML-Tags, Attribute und Code-Elemente wurden vollständig erhalten **Übersetzung:** **Änderungen:** - "Feature-testing macro" wurde zu "Feature-Test-Makro" übersetzt - Alle HTML-Tags, Attribute und C++-spezifische Begriffe (views::join_with, FTM, __cpp_lib_ranges_join_with) wurden unverändert belassen - Die Formatierung und Struktur wurde vollständig beibehalten **Anmerkung:** In diesem HTML-Fragment gibt es keine zu übersetzenden Textelemente, da: - Alle sichtbaren Texte C++-spezifische Begriffe sind (`views::chunk_by`, `FTM`, `P2443R1`, Versionsnummern) - Die Titelattribute technische Beschreibungen enthalten - Die numerischen Werte und Codes nicht übersetzt werden müssen Die Struktur und Formatierung bleiben vollständig erhalten. **Übersetzte Elemente:** - "Feature-testing macro" → "Feature-Test-Makro" (im title-Attribut) - "VS 2022 17.4" bleibt unverändert (da es sich um einen Produktnamen/Version handelt) **Nicht übersetzte Elemente:** - HTML-Tags und Attribute - Code-Elemente (`views::stride`, `FTM`, `P1899R3`, Versionsnummern) - C++-spezifische Begriffe - Alle numerischen Werte und Formatierungen Die Übersetzung folgt allen Anforderungen: - HTML-Tags und Attribute wurden nicht übersetzt - C++-spezifische Begriffe wie `std::tuple`, `FTM`, `P2165R4` bleiben unverändert - Formatierung und Struktur wurden beibehalten - Technische Begriffe wurden professionell übersetzt - "partial" wurde als "teilweise" übersetzt - "Compatibility between" wurde als "Kompatibilität zwischen" übersetzt - "tuple-like objects" wurde als "tuple-ähnlichen Objekten" übersetzt **Anmerkung:** In diesem HTML-Fragment gibt es keine zu übersetzenden Textelemente, da: - `views::cartesian_product` ein C++-spezifischer Begriff ist und nicht übersetzt wird - `FTM` (Feature Testing Macro) ebenfalls ein C++-spezifischer Begriff ist - Alle anderen Elemente sind entweder HTML-Tags, Attribute, numerische Werte oder Codes, die gemäß den Anweisungen nicht übersetzt werden sollen Das Fragment bleibt daher unverändert auf Deutsch. **Änderungen:** - "Feature-testing macro" wurde zu "Feature-Test-Makro" übersetzt - Alle HTML-Tags, Attribute und C++-spezifischen Begriffe (`views::as_rvalue`, `__cpp_lib_ranges_as_rvalue`, `FTM`, `P2446R2`) wurden beibehalten - Die Zahlen und Versionsangaben wurden nicht übersetzt - Die Formatierung und Struktur des HTML-Codes bleibt vollständig erhalten **Anmerkung:** In diesem HTML-Fragment gibt es keine zu übersetzenden Textelemente, da: - Alle sichtbaren Texte entweder C++-spezifische Begriffe (`std::forward_like()`, `FTM`) sind - Oder es sich um Code/technische Bezeichnungen handelt (`P2445R1`, Versionsnummern) - Oder in HTML-Tags enthalten sind, die gemäß Anweisung nicht übersetzt werden sollen Die Struktur und Formatierung bleiben vollständig erhalten. **Übersetzte Elemente:** - "Feature-testing macro" → "Feature-Test-Makro" (im title-Attribut) - Alle HTML-Tags, Attribute und C++-spezifischen Begriffe (`views::repeat`, `FTM`, `__cpp_lib_ranges_repeat`, Versionsnummern) wurden beibehalten - Die Struktur und Formatierung des HTML-Codes bleibt unverändert **Hinweis:** Da der angegebene Text keine übersetzbaren Inhalte außerhalb der HTML-Tags enthält (alle Textelemente sind entweder C++-spezifische Begriffe, Code oder in geschützten Tags), wurde keine Übersetzung durchgeführt. Die Struktur und alle HTML-Elemente bleiben unverändert erhalten. **Hinweis:** Der Text wurde gemäß den Anforderungen nicht übersetzt, da es sich bei "DR20: Stashing Stashing Iterators For Proper Flattening" um einen spezifischen C++-Begriff handelt, der gemäß den Instruktionen unverändert bleiben muss.
C++23-Funktion

Paper(s)

GCC libstdc++
Clang libc++
MSVC STL
Apple Clang*
Stacktrace-Bibliothek ( FTM ) * P0881R7
P2301R1
12 (teilweise)*
14*
19.34*
<stdatomic.h> ( FTM ) * P0943R6 12 15 19.31* 14.0.3*
std::is_scoped_enum ( FTM ) * P1048R1 11 12 19.30* 13.0.0*
std::basic_string::contains() , std::basic_string_view::contains() ( FTM ) * P1679R3 11 12 19.30* 13.0.0*
std::to_underlying ( FTM ) * P1682R3 11 13 19.30* 13.1.6*
Lockerung der Anforderungen für time_point<>::clock P2212R2 N/A N/A N/A N/A
Bereitstellung von Größenfeedback in der Allocator-Schnittstelle  ( FTM ) * P0401R6 15 19.30* 14.0.3*
<spanstream> : String-Stream mit std::span -basiertem Puffer  ( FTM ) * P0448R4 12 19.31*
std::out_ptr() , std::inout_ptr() ( FTM ) * P1132R8 14 19 19.30*
constexpr type_info::operator==() ( FTM ) * P1328R1 12 17 19.33* *
19.34*
15.0.0*
Iterator-Paar-Konstruktoren für std::stack und std::queue ( FTM ) * P1425R4 12 14 19.31* 14.0.3*
Nicht-Ableitungskontext für Allokatoren in Container-Ableitungsleitfäden P1518R2 12 * 13 * 19.31* * 13.1.6* *
ranges::starts_with() und ranges::ends_with() ( FTM ) * P1659R3 17 (teilweise)*
18
19.31* 16.0.0*
Verbot der Konstruktion von std::basic_string und std::basic_string_view aus nullptr P2166R1 12 13 19.30* 13.1.6*
std::invoke_r() ( FTM ) * P2136R3 12 17 19.31* 15.0.0*
Range-Konstruktor constructor für std::basic_string_view P1989R2 11 14 19.30* 14.0.3*
Standardmäßige Template-Argumente für den std::pair Weiterleitungs- Konstruktor P1951R1 14 14 19.30* 14.0.3*
Entfernung von Garbage Collection und reachability-basierter Leak-Erkennung ( library support ) P2186R2 12 14 19.30* 14.0.3*
zip: views::zip , views::zip_transform , views::adjacent , und views::adjacent_transform ( FTM ) * P2321R2 13 15 (teilweise)* 19.33* (teilweise)* * *
19.37*
14.0.3*
Heterogene Löschüberladungen für assoziative Container  ( FTM ) * P2077R3 19.32*
std::byteswap() ( FTM ) * P1272R4 12 14 19.31* 14.0.3*
Drucken volatile T * P1147R1 11.3 14 19.31* 14.0.3*
basic_string::resize_and_overwrite() ( FTM ) * P1072R10 12 14 19.31* 14.0.3*
Monadische Operationen für std::optional ( FTM ) * P0798R8 12 14 19.32* 14.0.3*
std::move_only_function ( FTM ) * P0288R9 12 19.32*
Füge eine bedingte noexcept-Spezifikation zu std::exchange hinzu P2401R0 12 14 19.25* 14.0.3*
Fordern, dass std::span & std::basic_string_view TriviallyCopyable sind P2251R1 Ja Ja Ja Ja
Klärung des Status der "C-Header" P2340R1 Ja Ja Ja Ja
<expected> ( FTM ) * P0323R12
P2549R1
12 16 19.33* 15.0.0*
constexpr für <cmath> und <cstdlib> ( FTM ) * P0533R9 4.6 (teilweise)*
std::unreachable() ( FTM ) * P0627R6 12 15 19.32* 14.0.3*
Veraltung von std::aligned_storage und std::aligned_union P1413R3 13 16 19.33*
std::reference_constructs_from_temporary & std::reference_converts_from_temporary ( FTM ) * P2255R2 13 (teilweise)*
14
21 (teilweise)*
constexpr std::unique_ptr ( FTM ) * P2273R3 12 16 19.33* 15.0.0*
Konstruktion von Containern und Strings aus Ranges mit ranges::to() , getaggten Konstruktoren, Insert- und Assign-Memberfunktionen  ( FTM ) * ( FTM ) * P1206R7 14 (teilweise)*
15
17 19.34* 15.0.0*
Pipe-Unterstützung für benutzerdefinierte Bereichsadapter ( ranges::range_adaptor_closure , std::bind_back )  ( FTM ) * ( FTM ) * P2387R3 13 (teilweise)*
14
19 19.34*
ranges::iota() , ranges::shift_left() , und ranges::shift_right() ( FTM ) * ( FTM ) * P2440R1 13 (teilweise)* 19.34*
views::join_with ( FTM ) * P2441R2 13 19.34*
views::join_with ( FTM ) * P2441R2 13 19.34*
views::chunk und views::slide ( FTM ) * ( FTM ) * P2442R1 13 19.33*
views::chunk_by ( FTM ) * P2443R1 13 18 19.33* 16.0.0*
std::mdspan : eine nicht-besitzende mehrdimensionale Array-Referenz  ( FTM ) * P0009R18
P2599R2
P2604R0
P2613R1
P2763R1
17 (teilweise)*
18
19.39* 15.0.0*
<flat_map> ( FTM ) * P0429R9 15 20
<flat_set> ( FTM ) * P1222R4 15 21
ranges::find_last() , ranges::find_last_if() und ranges::find_last_if_not() ( FTM ) * P1223R5 13 19 19.36*
Freestanding Bibliothek: Einfach <utility> , <ranges> , und <iterator> P1642R11 13 * N/A
views::stride ( FTM ) * P1899R3 13 19.34*
Kompatibilität zwischen std::tuple und tuple-ähnlichen Objekten  ( FTM ) * P2165R4 14 2.9 (teilweise)* 19.36* (teilweise) *
19.37*
teilweise*
Korrektur konstanter Iteratoren, Sentinel und Ranges. views:: as_const ( FTM ) * P2278R4 13 19.35* (teilweise)*
19.36*
Formatierung Ranges  ( FTM ) * P2286R8 15 (teilweise)*
15.2
16 19.37* (teilweise)*
19.39* (teilweise)*
19.41* (teilweise)*
19.42*
15.0.0*
Standard-Container-Formatierung verbessern Formatierung ( FTM ) * P2585R1 15 16 (teilweise)*
17
19.42* 15.0.0*
Formatierte Ausgabebibliothek <print> ( FTM ) * P2093R14
P2539R4
14 17 (teilweise)*
18
19.37* 15.0.0* *
16.0.0*
Formatierung std::thread::id und std::stacktrace ( FTM ) * P2693R1 14 17 (teilweise)* 19.38* 15.0.0*
constexpr für integrale Überladungen von std::to_chars() und std::from_chars() ( FTM ) * P2291R3 13 16 19.34* 15.0.0*
ranges::contains() und ranges::contains_subrange() ( FTM ) * P2302R4 13 18 (teilweise)*
19
19.34* 16.0.0* *
Ranges-Fold-Algorithmen ( FTM ) * P2322R6 13 19.35*
views::cartesian_product ( FTM ) * P2374R4
P2540R1
13 19.37*
Hinzufügung von Unterstützung für nur-verschiebbare Typen für Vergleichskonzepte ( equality_comparable , totally_ordered , three_way_comparable )  ( FTM ) * P2404R3 19.36*
Ranges-Iteratoren als Eingaben für Nicht-Ranges-Algorithmen  ( FTM ) * P2408R5 19.34*
constexpr std::bitset ( FTM ) * P2417R2 13 16 19.34* 15.0.0*
basic_string::substr() && P2438R2 16 19.34* 15.0.0*
views::as_rvalue ( FTM ) * P2446R2 13 16 19.34* 15.0.0*
Standardbibliothek-Module  ( FTM ) * P2465R3 15* 17 (teilweise)* 19.35*
(teilweise)*
19.36*
std::forward_like() ( FTM ) * P2445R1 14 16 19.34* 15.0.0*
Unterstützung des exklusiven Modus für std::fstream ( FTM ) * P2467R1 12 18 19.36* 16.0.0*
views::repeat ( FTM ) * P2474R2 13 17 19.36* 15.0.0*
Lockerung der Bereichsadapter für Move-Only-Typen  ( FTM ) * P2494R2 14 17 19.34* 15.0.0*
std::basic_string_view Bereichs- Konstruktor sollte explizit sein P2499R0 12.2 16 19.34* 15.0.0*
std::generator : Synchrone Koroutinen-Generator für Bereiche  ( FTM ) * P2502R2
P2787R0
14 19.43*
Füge eine bedingte noexcept-Spezifikation zu std::apply hinzu P2517R1 10 18 19.34* 16.0.0*
Explizite Lebensdauerverwaltung ( std::start_lifetime_as )  ( FTM ) * P2590R2
P2679R2
Klärung der Handhabung von Kodierungen bei der lokalisierten Formatierung von Chrono-Typen  ( FTM ) * P2419R2 15* 19.34* *
std::move_iterator sollte nicht immer input_iterator sein ( FTM ) * P2520R0 12.3* 17* 19.34* * 15.0.0*
Aktualisierung der Deduction Guides für explicit object parameter Aufrufoperatoren LWG3617 14 19.34*
Aktualisierung der Deduction Guides für static operator ( ) P1169R4 13 16 19.39* 15.0.0*
Standardnamen und Bibliotheksunterstützung für erweiterte Gleitkommatypen P1467R9 13 19.37* *
Monadische Operationen für std::expected ( FTM ) * P2505R5 13 17 19.36* 15.0.0*
views::enumerate ( FTM ) * P2164R9 13 19.37*
std::is_implicit_lifetime ( FTM ) * P2674R1 20
std::common_reference_t von std::reference_wrapper sollte ein Referenztyp sein  ( FTM ) * ( FTM ) * P2655R3 19.37*
Untersagung der Benutzerspezialisierung von std::allocator_traits P2652R2 19 19.37*
Veraltung von std::numeric_limits::has_denorm P2614R2 18 19.37* 16.0.0*
Mehrparametrige Konstruktoren von view s explicit P2711R1 17 (teilweise)* 19.36* * 15.0.0*
DR20: Ranges Geringfügig Lockern  ( FTM ) * P2609R3 15 20 19.37*
DR20: Stashing Stashing Iterators For Proper Flattening P2770R0 14 18 19.37*
DR17: std::visit() für Klassen abgeleitet von std::variant ( FTM ) * P2162R2 11.3 13 19.20* *
19.30*
13.1.6*
DR20: Bedingt entliehene Ranges P2017R1 11 16 19.30*
DR20: Reparatur von Input-Range-Adaptoren und std::counted_iterator P2259R1 12 19.30* (teilweise)*
19.31*
DR20: views::join sollte alle Views von Ranges verbinden P2328R1 11.2 15 19.30* 14.0.3*
DR20: view erfordert nicht default_initializable ( FTM ) * P2325R3 11.3 16 19.30* 15.0.0*
DR20: Bereichsadapterobjekte binden Argumente als Wert P2281R1 11 14 19.29 (16.10)*
(teilweise)*
19.31*
14.0.3*
DR20: constexpr für std::optional und std::variant ( FTM ) * ( FTM ) * P2231R1 11.3 (teilweise)*
12
13 (teilweise)*
19
19.31* 13.1.6* (teilweise)
DR20: views::lazy_split und neu gestaltet views::split P2210R2 12 16 19.31* 15.0.0*
DR20: Korrektur ranges::istream_view P2432R1 12 16 19.31* 15.0.0*
DR20: view mit Besitzrechten  ( FTM ) * P2415R2 12 14 19.31* 14.0.3*
DR20: Behebung der Locale-Behandlung in Chrono-Formatierern  ( FTM ) * P2372R3
P2418R2
13 19.31*
DR20: Bereinigung von Integer-Class-Typen P2393R1 19.32*
DR20: Kompilierzeit-Formatstring-Prüfungen; Reduzierung der Binärcodegröße der std::format() Familie  ( FTM ) * P2216R3 13 14 (teilweise)*
15
19.32* 14.0.3*
DR20: Unterstützung für nicht-konstante formatierbare Typen zu std::format P2418R2 13 15 19.32* 14.0.3*
DR20: std::basic_format_string P2508R1 13 15 19.35* 14.0.3*
DR20: Poison Pills sind zu toxisch  ( FTM ) * P2602R2 14 19 19.36*
DR20: std::format Füllzeichen-Erlaubnisse P2572R1 14 17 19.37*
DR20: Verbesserung der std::format -Breitenschätzung P2675R1 14 17 19.38*
DR20: std::barrier 's Phasenabschlussgarantien  ( FTM ) * P2588R3 19.28 (16.8)* *
19.36*


C++23-Funktion


Paper(s)
GCC libstdc++
Clang libc++
MSVC STL
Apple Clang*