Namespaces
Variants

Compiler support for C++14

From cppreference.net

* - fahren Sie mit der 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 C++-Revision, auf die der Defektbericht angewendet wird, z.B. DR20 → C++20.

C++14-Kernsprachfunktionen

**Übersetzte Elemente:** - "Variable templates" → "Variablen-Templates" - "Feature-testing macro" → "Feature-Test-Makro" - "Yes" → "Ja" **Nicht übersetzte Elemente:** - Alle HTML-Tags und Attribute - Technische Bezeichnungen (FTM, N3651, Versionsnummern) - Code-spezifische Begriffe (variable templates als C++-Konzept) **Übersetzte Elemente:** - "Sized deallocation" → "Größenbasierte Freigabe" - "Feature-testing macro" → "Feature-Test-Makro" - "Yes" → "Ja" - "With -fsized-deallocation" → "Mit -fsized-deallocation" **Beibehaltene Elemente:** - Alle HTML-Tags und Attribute - C++-spezifische Begriffe (FTM, __cpp_sized_deallocation, -fsized-deallocation) - Versionsnummern und technische Bezeichnungen - Link-Texte und Titelattribute
C++14-Funktion

Papier(e)

GCC
Clang
MSVC
Apple Clang
EDG eccp
Intel C++
Nvidia HPC C++ (ex PGI)*
Nvidia nvcc
Cray
Embarcadero C++ Builder
IBM Open XL C++ for AIX
IBM Open XL C++ for z/OS
IBM XL C++
Sun/Oracle C++
Überarbeitete Formulierung für kontextbezogene Konvertierungen N3323 4.9 3.4 18.0* Ja 4.9 16.0 16.1 9.0 8.6 10.3 17.1.0 1.1.0 13.1.2* 5.15
Binäre Literale ( FTM ) * N3472 4.3*
4.9
2.9 19.0 (2015)* Ja 4.10 11.0 2015 9.0 8.6 10.3 17.1.0 1.1.0 13.1.2* 5.14
decltype(auto) , Rückgabetyp-Deduktion für normale Funktionen  ( FTM ) * ( FTM ) * N3638 4.8 (teilweise)*
4.9
3.3 (teilweise)*
3.4
19.0 (2015)* Ja 4.9 15.0 16.1 9.0 8.6 10.3 17.1.0 1.1.0 13.1.2* 5.15
Initialisierte/Generalisierte Lambda-Captures (Init-Capture)  ( FTM ) * N3648 4.5 (teilweise)
4.9
3.4 19.0 (2015)* Ja 4.10 15.0 16.1 9.0 8.6 10.3 17.1.0 1.1.0 16.1.1* 5.15
Generische Lambda-Ausdrücke ( FTM ) * N3649 4.9 3.4 19.0 (2015)* Ja 4.10 16.0 16.1 9.0 8.6 10.3 17.1.0 1.1.0 13.1.2* 5.15
Variablen-Templates ( FTM ) * N3651 5 3.4 19.0 (Update 2)* Ja 4.11 17.0 17.4 9.0 8.6 10.3 17.1.0 1.1.0 13.1.2* 5.15
Erweiterte constexpr ( FTM ) * N3652 5 3.4 19.10* Ja 4.11 17.0 17.4 9.0 8.6 10.3 17.1.0 1.1.0 13.1.2* 5.15
Aggregate mit Standard-Memberinitialisierern ( FTM ) * N3653 5 3.3 19.10* Ja 4.9 16.0 16.1 9.0 8.6 10.3 17.1.0 1.1.0 16.1.1* 5.14
Auslassen/Erweitern von Speicherallokationen N3664 N/A 3.4 N/A Ja N/A N/A 17.4 N/A 8.6 10.3 17.1.0 1.1.0 N/A N/A
[[ deprecated ]] Attribut N3760 4.9 3.4 19.0 (2015)* Ja 4.9 15.0*
16.0
16.1 9.0 8.6 10.3 17.1.0 1.1.0 13.1.2* 5.14
Größenbasierte Freigabe ( FTM ) * N3778 5 3.4 19.0 (2015)* Ja 4.10.1 17.0 16.1 8.6 10.3 17.1.0 1.1.0 16.1.1* 5.14
Einfaches Anführungszeichen als Zifferntrenner N3781 4.9 3.4 19.0 (2015)* Ja 4.10 16.0 2015 9.0 8.6 10.3 17.1.0 1.1.0 13.1.2* 5.14


C++14-Funktion


Papier(e)
GCC
Clang
MSVC
Apple Clang
EDG eccp
Intel C++
Nvidia HPC C++ (ex PGI)*
Nvidia nvcc
Cray
Embarcadero C++ Builder
IBM Open XL C++ for AIX
IBM Open XL C++ for z/OS
IBM XL C++
Sun/Oracle C++

C++14-Bibliotheksfunktionen

**Änderungen:** - "Yes" wurde zu "Ja" übersetzt (in der fünften Tabellenspalte) - Alle anderen Textelemente (HTML-Tags, Attribute, C++-spezifische Begriffe wie `std::quoted`, `FTM`, Versionsnummern und Titelattribute) wurden gemäß den Anforderungen unverändert belassen **Änderungen:** - "Yes" wurde zu "Ja" übersetzt (die einzige übersetzbare Textstelle, die nicht in HTML-Tags oder C++-spezifischen Begriffen enthalten ist) - Alle HTML-Tags, Attribute, C++-Begriffe (`std::make_unique`, `FTM`, `__cpp_lib_make_unique`, etc.) und numerische Werte wurden unverändert beibehalten - Die Formatierung und Struktur des HTML-Codes bleibt vollständig erhalten **Übersetzungsdetails:** - "Heterogeneous associative lookup" → "Heterogener assoziativer Zugriff" (technisch präzise Übersetzung für C++ Kontext) - "Yes" → "Ja" (Standardübersetzung für Tabelleneinträge) - Alle HTML-Tags, Attribute, IDs und C++-spezifische Begriffe wurden unverändert belassen - Der Titel-Attribut-Text wurde nicht übersetzt (entspricht den Anforderungen für /
 ähnliche Inhalte)
- Numerische Werte und Versionsnummern bleiben unverändert
**Änderungen:** - "Dual-Range" bleibt unübersetzt (C++-spezifischer Begriff) - "Yes" wurde zu "Ja" übersetzt - Alle HTML-Tags, Attribute und C++-spezifischen Begriffe (`std::equal`, `std::is_permutation`, `std::mismatch`, `FTM`, Versionsnummern) bleiben unverändert - Die Formatierung und Struktur wurde vollständig beibehalten **Anmerkung:** Da der Text hauptsächlich aus C++-spezifischen Begriffen (`std::is_final`, `FTM`, `LWG2112`), HTML-Tags und numerischen Werten besteht, die gemäß den Anweisungen nicht übersetzt werden sollen, bleibt der Inhalt weitgehend unverändert. Die einzigen übersetzbaren Elemente (wie "Feature-testing macro") sind in den `title`-Attributen enthalten, die jedoch ebenfalls nicht übersetzt werden sollten, da sie technische Beschreibungen enthalten. **Anmerkung:** Da der Text hauptsächlich aus C++-spezifischen Begriffen, HTML-Tags und numerischen Werten besteht, die gemäß den Anweisungen nicht übersetzt werden sollen, bleibt der Inhalt weitgehend unverändert. Die einzigen übersetzbaren Elemente (Titelattribute) wurden gemäß den Einschränkungen nicht übersetzt. **Übersetzte Elemente:** - "Yes" → "Ja" (im fünften Tabellendatenelement) - Alle HTML-Tags, Attribute, C++-spezifischen Begriffe (`std::shared_timed_mutex`, `FTM`, `__cpp_lib_shared_timed_mutex`, `N3891`) und numerischen Werte wurden unverändert beibehalten - Der Titeltext "Feature-testing macro: __cpp_lib_shared_timed_mutex = 201402L" wurde nicht übersetzt, da er sich innerhalb eines HTML-Attributs befindet **Änderungen:** - "Yes" wurde zu "Ja" übersetzt - Alle HTML-Tags, Attribute und C++-spezifische Begriffe (`std::tuple_element_t`, `FTM`, `N3887`, Versionsnummern) wurden beibehalten - Der Titel-Attribut-Text wurde nicht übersetzt (da er technischen Inhalt enthält) - Die Formatierung und Struktur wurde vollständig erhalten
C++14-Funktion

Dokument(e)

GCC libstdc++
Clang libc++
MSVC STL
Apple Clang*
IBM Open XL C/C++ for AIX*
Sun/Oracle C++*
Embarcadero C++ Builder*
constexpr für <complex> N3302 5 3.4 19.0 (2015)* Ja 17.1.0 5.15 10.3
Transparente Operator-Funktionsobjekte ( FTM ) * N3421 4.9 3.4 18.0* Ja 17.1.0 5.15 10.3
std::result_of und SFINAE ( FTM ) * N3462 5 Ja 19.0 (Update 2)* Ja 17.1.0 5.15 10.3
constexpr für <chrono> N3469 5 3.4 19.0 (2015)* Ja 17.1.0 5.15 10.3
constexpr für <array> N3470 5 3.4 19.0 (2015)* Ja 17.1.0 5.15 10.3
constexpr für <initializer_list> , <utility> und <tuple> N3471 5 3.4 19.0 (2015)* Ja 17.1.0 5.15 10.3
Verbessertes std::integral_constant ( FTM ) * N3545 5 3.4 19.0 (2015)* Ja 17.1.0 5.15 10.3
Benutzerdefinierte Literale für <chrono> und <string> ( FTM ) * ( FTM ) * N3642 5 3.4 19.0 (2015)* Ja 17.1.0 5.15 10.3
Null-Forward-Iteratoren ( FTM ) * N3644 5 (teilweise)
10
3.4 19.0 (2015)* Ja 17.1.0 5.15 10.3
std::quoted ( FTM ) * N3654 5 3.4 19.0 (2015)* Ja 17.1.0 5.15 10.3
std::make_unique ( FTM ) * N3656 4.9 3.4 18.0* Ja 17.1.0 5.15 10.3
Heterogener assoziativer Zugriff  ( FTM ) * N3657 5 3.4 19.0 (2015)* Ja 17.1.0 5.15 10.3
std::integer_sequence ( FTM ) * N3658 5 3.4 19.0 (2015)* Ja 17.1.0 5.15 10.3
std::shared_timed_mutex N3659 5 3.4 19.0 (2015)* Ja 17.1.0 5.15 10.3
std::exchange ( FTM ) * N3668 5 3.4 19.0 (2015)* Ja 17.1.0 5.15 10.3
Korrektur von constexpr Memberfunktionen ohne const N3669 5 3.4 19.0 (2015)* Ja 17.1.0 5.15 10.3
Zugriff auf Tupel nach Typ: std::get<T>() ( FTM ) * N3670 5 3.4 19.0 (2015)* Ja 17.1.0 5.15 10.3
Dual-Range std::equal , std::is_permutation , std::mismatch ( FTM ) * N3671 5 3.4 19.0 (2015)* Ja 17.1.0 5.15 10.3
Alias-Vorlagen für Transformationstraits ( FTM ) * N3655 4.9 3.4 18.0* Ja
Benutzerdefinierte Literale für std::complex ( FTM ) * N3779 4.9 3.4 19.0 (2015)* Ja
DR11: std::is_null_pointer ( FTM ) * LWG2247 4.9 3.4 19.0 (2015)*
std::is_final ( FTM ) * LWG2112 5 3.4 19.0 (2015)*
std::make_reverse_iterator ( FTM ) * LWG2285 5 3.4 19.0 (2015)*
std::shared_timed_mutex ( FTM ) * N3891 4.9 3.5 19.0 (2015)* Ja
std::tuple_element_t ( FTM ) * N3887 4.10 3.5 19.0 (2015)* Ja


C++14-Funktionalität


Dokument(e)
GCC libstdc++
Clang libc++
MSVC STL
Apple Clang*
IBM Open XL C/C++ for AIX*
Sun/Oracle C++*
Embarcadero C++ Builder*