History of C++ – cppreference.com
Aus cppreference.com
<metanoindex/>
Frühphase
- 1979: C with Classes (dt. „C mit Klassen“) zum ersten Mal implementiert.
- Neue Features: Klassen, Komponenten-Funktionen, abgeleitete Klassen, separates Kompilieren, Sichtbarkeit (public, private), Freunde, Typprüfung von Funktionsargumenten, Default-Funktionsargumente, Inline-Funktionen, überladene Zuweisungsoperatoren, Konstruktoren, Destruktoren,
f()bedeutet dasselbe wief(void), Call-Funktion und Return-Funktion (Synchronisation Funktionen, nicht in C++). - Bibliotheken: Die Bibliothek für nebenläufige Tasks (nicht in C++)
- 1982: Referenz-Handbuch für C with classes veröffentlicht
- 1984: C84 umgesetzt, Referenz-Handbuch veröffentlicht
- 1985: Cfront 1.0
- Neue Features: virtuelle Funktionen, Überladen von Funktionen und Operatoren, Referenztypen, die Operatoren
newunddelete, das Schlüsselwortconst, der Bereichsauflösungsoperator:: - Neue Bibliotheken:
complex,string,iostream
- 1985: The C++ Programming Language, 1. Auflage
- 1989: Cfront 2.0
- Neue Features: Mehrfachvererbung, Zeiger auf Komponenten,
protected, typ-sicheres Linken, abstrakte Klassen, statische (static) und konstante (const) Komponenten-Funktionen, klassenspezifischenew- unddelete-Operatoren - Neue Bibliotheken: I/O-Manipulatoren
- 1990: The Annotated C++ Reference Manual
In diesem Buch wurde die Sprache in ihrer derzeitigen Form beschrieben, einschließlich einiger Funktionen, die noch nicht implementiert waren. Es diente als De-facto-Standard bis zur ISO-Norm.
- Neue Features: Namensräume, Ausnahmebehandlung, verschachtelte Klassen
- 1991: Cfront 3.0
- 1991: The C++ Programming Language, 2. Auflage
Standard-C++
- 1990: ANSI C++ Committee gegründet
- 1991: ISO C++ Committee gegründet
- 1998:
C++98(ISO/IEC 14882:1998)
- Neue Features: Laufzeit-Typinformation (engl. run-type type information, RTTI) (
dynamic_cast,typeid), kovariante Rückgabetypen, Cast-Operatoren,mutable,bool, Deklarationen in Bedingungen, explizite Vorlagen-Instanziierungen, Komponenten-Vorlagen,export - Neue Bibliotheken: Container, Algorithmen, Iteratoren, Funktionsobjekte (basierend auf der STL), locales,
bitset,valarray,auto_ptr,stringals Vorlage,iostreamundcomplex
- 1998: The C++ Programming Language, 3. Auflage
- 1999: Boost von den Mitgliedern des Ausschusses als Nährboden für neue Standard-Bibliothek Einrichtungen gegründet.
- 2003:
C++03(ISO/IEC 14882:2003)
Dies war eine kleine Revision, soll kaum mehr als eine technische Berichtigung
- Neue Features: Wert-Initialisierung
- Defect Reports: 125 defects, einschließlich DR 69, der die Elemente von
std::vectorzusammenhängenden macht.
- 2006: Performance TR (ISO / IEC TR 18015:2006) (ISO Store) (2006 draft)
- 2007: Neue Bibliotheken: TR1 (ISO / IEC TR 19768:2007) (ISO store) (2005 draft).
- Von Boost:
reference_wrapper, Smart Pointer, Memberfunktion, Result Of,bind,function, Type Traits,random, Spezielle mathematische Funktionen,tuple,array, ungeordnete Container (einschließlichhash) und Reguläre Ausdrücke. - Von C99: mathematische Funktionen aus
<math.h>, die neu in C99 waren, Leerzeichen-Zeichenklasse, Floating-Point-Umgebung, der I/O-Manipulatorhexfloat, Ganzzahl-Typen mit fester Größe, der Typlong long,va_copy, diesnprintf()undvscanf()und ähnliche, und die C99-Konversionsspezifizierer fürprintf()undscanf()und ähnliche.
Alles von TR1 außer die speziellen Funktionen sind mit geringfügigen Änderungen in C++11 enthalten.
{{{1}}}
Original:
{{{2}}}
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Diese TR ist ein C + +-Standard-Bibliothek Erweiterung, die die speziellen Funktionen, die Teil des TR1 waren fügt, waren aber nicht in C + 11 enthalten: elliptischen Integralen, exponential Integral Laguerre Polynome, Legendre, Hermite Polynome Bessel-Funktionen, Newmann Funktionen , beta-Funktion und Riemannsche Zeta-Funktion .
Original:
This TR is a C++ standard library extension, which adds the special functions that were part of TR1, but were not included in C++11: elliptic integrals, exponential integral, Laguerre polynomials, Legendre polynomials, Hermite polynomials, Bessel functions, Newmann functions, beta function, and Riemann zeta function.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
- 2011
C++11(ISO/IEC 14882:2011) (ISO Store) (ANSI Store) (Post-publication draft).
Eine große Anzahl von Änderungen wurden eingeführt, um sowohl zu standardisieren bestehende Praktiken und verbessern die Abstraktionen steht den C + +-Programmierer
Original:
A large number of changes were introduced to both standardize existing practices and improve the abstractions available to the C++ programmers
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
# New Sprach-Features: Auto-und decltype, ausgefallen und gelöscht Funktionen, endgültig und Override, nachgestellte Rückgabetyp rvalue Referenzen, move Konstruktoren / move Zuordnung scoped Enumerationen constexpr wörtlichen und Typen, die Liste der Initialisierung, das Delegieren und Konstrukteure geerbt, Klammer-oder -gleich Initialisierungen, nullptr, lange, lange, char16_t und char32_t, Typ-Aliasnamen, variadische Vorlagen, generalisierte Gewerkschaften, generalisierte PODs, Unicode-Zeichenfolgenliterale, benutzerdefinierte Literale, Attribute, Lambda-Ausdrücke, noexcept, alignof und alignas Multithread-Speicher-Modell, Gewinde -lokalen Speicher, GC-Schnittstelle für (basierend auf einem Boost-Bibliothek), statische Assertions (basierend auf einem Boost-Bibliothek)
Original:
# New language features: auto and decltype, defaulted and deleted functions, final and override, trailing return type, rvalue references, move constructors/move assignment, scoped enums, constexpr and literal types, list initialization, delegating and inherited constructors, brace-or-equal initializers, nullptr, long long, char16_t and char32_t, type aliases, variadic templates, generalized unions, generalized PODs, Unicode string literals, user-defined literals, attributes, lambda expressions, noexcept, alignof and alignas, multithreaded memory model, thread-local storage, GC interface, range for (based on a Boost library), static assertions (based on a Boost library)
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
# New Bibliotheks-Features: atomare Operationen Bibliothek, emplace () und andere Verwendung rvalue Referenzen in allen Teilen der vorhandenen Bibliothek, std :: initializer_list, stateful und scoped Zuweiser, forward_list, Chrono-Bibliothek, Verhältnis Bibliothek, neue Algorithmen, Unicode-Konvertierung Facetten
Original:
# New library features: atomic operations library, emplace() and other use of rvalue references throughout all parts of the existing library, std::initializer_list, stateful and scoped allocators, forward_list, chrono library, ratio library, new algorithms, Unicode conversion facets
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
# Von TR1: alle TR1 außer Spezielle Funktionen .
Original:
# From TR1: all of TR1 except Special Functions.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
# Von Boost: Der Thread-Bibliothek, exception_ptr, error_code und error_condition, iterator Verbesserungen (std :: begin, std :: end, std :: nächsten, std :: prev)
Original:
# From Boost: The thread library, exception_ptr, error_code and error_condition, iterator improvements (std::begin, std::end, std::next, std::prev)
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
# Von C: C-style Unicode-Konvertierung Funktionen
Original:
# From C: C-style Unicode conversion functions
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
# Defect Reports fest: 363 defects von 2008 Entwurf und 322 defects aufgelöst, nachdem beschlossen. Einige beachtenswerte Mängel sind 530, die std :: basic_string Objekten angrenzenden gemacht .
Original:
# Defect Reports fixed: 363 defects resolved by the 2008 draft and 322 defects resolved after. Notable defects include 530, which made std::basic_string objects contiguous.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
{{{1}}}
Original:
{{{2}}}
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Das TR implementiert die Decimal Floating-Point-Typen von IEEE 754-2008 Standard für Floating-Point-Arithmetik: std :: decimal :: decimal32, std :: decimal :: decimal64 und std :: decimal :: decimal128 .
Original:
This TR implements the decimal floating-point types from IEEE 754-2008 Standard for Floating-Point Arithmetic: std::decimal::decimal32, std::decimal::decimal64, and std::decimal::decimal128.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Zukünftige Entwicklung
2013 Der C + + Programming Language, 4. Auflage
Original:
2013 The C++ Programming Language, 4th edition
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.Bibliothek Erweiterungen TR2
Original:
Library extensions TR2
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Der nächste Satz von Bibliotheken Erweiterungen ist offen für Vorschläge
Original:
The next set of library extensions is open for proposals
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
# Von boost: Dateisystem (im Lieferumfang von Visual Studio seit 2011), Vernetzung
Original:
# From boost: filesystem (shipped by Visual Studio since 2011), networking
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
- C++1x
Die nächste Revision des C + +-Standard ist offen für Vorschläge
Original:
The next revision of the C++ standard is open for proposals
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.