C++29
Von de.cppreference.net
< cpp
Die nächste Generation des C++-Standards.
Der aktuelle IS-Fahrplan für C++29: P1000R8 (2026-04-13).
| Dieser Abschnitt ist unvollständig |
Neue Sprachmerkmale
Neue Bibliotheksmerkmale
Neue Module
Neue Header
| Dieser Abschnitt ist unvollständig |
Veraltete Merkmale
Entfernte Merkmale
| Dieser Abschnitt ist unvollständig |
Als veraltet markierte Merkmale
| Dieser Abschnitt ist unvollständig |
Fehlerberichte
Compilerunterstützung
Hauptartikel: C++29-Compilerunterstützung
C++29-Kernsprachenmerkmale
| C++29-Merkmal |
Papier(e) |
GCC |
Clang |
MSVC |
Apple Clang |
EDG eccp |
Intel C++ |
Nvidia HPC C++ (ex PGI)* |
Nvidia nvcc |
Cray |
|
|---|---|---|---|---|---|---|---|---|---|---|---|
#embed Offset-Parameter (FTM)*
|
P3540R3 | ||||||||||
| Verträge für virtuelle Funktionen (FTM)* | P3097R3 | ||||||||||
| Paketindizierung für Templates (FTM)* | P3670R4 | ||||||||||
| Designierte Initialisierer für Basisklassen (FTM)* | P2287R6 | ||||||||||
| Freigabefunktionen mit auslösender Ausnahmespezifikation sind fehlerhaft | P3424R2 | ||||||||||
| Bedingte noexcept-Spezifizierer in Verbundanforderungen (FTM)* | P3822R2 | ||||||||||
| Standardmäßiges Vorgeben von Postfix-Inkrement- und -Dekrement-Operatorfunktionen | P3668R4 | ||||||||||
| Hinzufügen von Einschränkungen für standardmäßig vorgegebene Zuweisungsoperatorfunktionen | P2953R5 | ||||||||||
| DR26: Nur-consteval-Werte (FTM)* | P4101R1 | ||||||||||
| DR23: Zulassen von Figment und Abkürzung in benannte universelle Zeichen-Escapes | P3733R1 | ||||||||||
| DR20: Aufhebung der gegenseitigen Ausschließlichkeit für Coroutine-Promise-Rückgabefunktionen (FTM)* | P3950R1 | ||||||||||
| DR: Anpassung von Bezeichnern gemäß neuer Unicode-Empfehlungen | P3658R1 | ||||||||||
| DR: Expliziter Lambda-Capture wird in lexikalischer Reihenfolge deklariert und initialisiert | P3847R1 | 3.1 | |||||||||
| DR: Zulassen von C-Sprachbindung für Templates | P2243R0 | ||||||||||
| DR: Klarstellung des Verhaltens von Gleitkommaüberlauf | P3899R3 | ||||||||||
| DR: Nicht-deterministische Zeigerherkunft | P2434R5 | ||||||||||
| DR: Auflösung des Zeigerlebensdauer-Ende-Zaps für atomare und volatile Zugriffe | P2414R12 | ||||||||||
| DR: Definition von Lade- und Speicheroperationen für ungültige Zeiger | P3347R6 | ||||||||||
| C++29-Merkmal |
Papier(e) |
GCC |
Clang |
MSVC |
Apple Clang |
EDG eccp |
Intel C++ |
Nvidia HPC C++ (ex PGI)* |
Nvidia nvcc |
Cray |
C++29-Bibliotheksmerkmale
| C++29-Merkmal |
Papier(e) |
GCC libstdc++ |
Clang libc++ |
MSVC STL |
Apple Clang* |
|
|---|---|---|---|---|---|---|
| Bessere Suchfunktion für Map-Container (FTM)* | P3091R6 | |||||
| Zeiger-Tagging (FTM)* | P3125R6 | |||||
| Thread-Attribute (FTM)* | P2019R9 | |||||
| Hazard-Pointer-Batches (FTM)* | P3428R4 | |||||
| Bit-Permutationen (FTM)* (FTM)* | P3104R6 P3772R2 |
|||||
| std::shl und std::shr (FTM)* (FTM)* | P3793R2 | |||||
| std::mdspan Kopier- und Fülloperationen (FTM)* | P3242R4 | |||||
| std::simd::iota (FTM)* | P3319R6 | |||||
| std::expected::has_error() (FTM)* | P3798R1 | |||||
| view_interface::at() (FTM)* | P3052R2 | |||||
| std::formatter<std::error_code> | P3395R6 | |||||
| Behebung der standardmäßigen Gleitkommadarstellung in std::to_chars (FTM)* | P3505R4 | |||||
| Anforderung von std::intptr_t und std::uintptr_t | P3248R5 | |||||
| Veraltung von vorzeichenbehafteten Zeichentypen in I/O-Streams | P3154R3 | |||||
| DR26: Rückgängigmachen der Unterstützung von Zeichenkettenliteralen in std::constant_wrapper (FTM)* | P4206R0 | 17 | ||||
| C++29-Merkmal |
Papier(e) |
GCC libstdc++ |
Clang libc++ |
MSVC STL |
Apple Clang* |
* - Fahren Sie mit der Maus über eine mit dem Stern markierte Zelle *, um zusätzliche Popup-Notizen zu sehen.
DRnn - die Nummer nn nach "DR" bezeichnet die Ziel-C++-Revision, für die der Fehlerbericht gilt, z. B. DR20 → C++20.
Externe Links
| 1. | C++29 - Wikipedia |