Die Geschichte der Programmiersprache C++ reicht bis ins Jahr 1979 zurück, als Bjarne Stroustrup einige Entwicklungen für seine Doktorarbeit durchführte. Von allen Sprachen, die Stroustrup verwenden kann, gibt es eine namens Simula, bei der es sich, wie der Name schon sagt, möglicherweise um eine Sprache handelt, die hauptsächlich für die Simulation entwickelt wurde. Die Sprache Simula 67 ist eine von Stroustrup verwendete Variante und gilt als die primäre Sprache, die das objektorientierte Programmierparadigma unterstützt. Stroustrup findet dieses Paradigma bei der Verpackungsentwicklung hilfreich. Allerdings ist die Simula-Sprache für den praktischen und praktischen Einsatz zu langsam. Kurz darauf wollte Bjarne Stroustrup C durch die Unterstützung des objektorientierten Paradigmas verbessern. Er vertiefte sich in die OO-Implementierung von Smalltalk, um Implementierungsideen zu erhalten. Aber er wollte dafür nicht auf Leistung verzichten, also begann er mit der Arbeit an „C mit Klassen (C mit Klassen)“ in der Hoffnung, dass C++-Code bei der Ausführung eine ähnliche (oder bessere) Leistung wie C-Code haben sollte.
1983 wurde der Name der Sprache von „C with Classes“ in C++ geändert. Der ++-Operator in C ist der Operator zum Inkrementieren von Variablen, der Ihnen einen Einblick in die Sichtweise von Stroustrup auf die Sprache gibt. In dieser Zeit wurden viele neue Funktionen hinzugefügt. Die bemerkenswertesten davon sind virtuelle Funktionen, Funktionsüberladung, Referenzen mit einem kaufmännischen Und, dem Schlüsselwort const und einzeilige Kommentare mit zwei Schrägstrichen.
1985 veröffentlichte Stroustrup ein Buch mit dem Titel „The C++ Programming Language“. Im selben Jahr wurde C++ als kommerzielles Produkt implementiert. Die Sprache wurde nicht formal standardisiert, was dieses Buch zu einer sehr wichtigen Referenz macht. Die Sprache wurde 1989 erneut aktualisiert, um geschützte und statische Mitglieder sowie die Vererbung von mehreren Klassen einzubeziehen.
Im Jahr 1990 wurde das Annotated C++ Reference Manual veröffentlicht. Im selben Jahr sollte Borlands Turbo C++-Compiler als kommerzielles Produkt veröffentlicht werden. Turbo C++ fügt viele weitere Bibliotheken hinzu, die erhebliche Auswirkungen auf die C++-Entwicklung haben können. Obwohl die letzte stabile Version von Turbo C++ im Jahr 2006 erschien, wird der Compiler immer noch häufig verwendet.
Im Jahr 1998 veröffentlichte das C++ Standards Committee den ersten C++ ISO/IEC 14882:1998 International Standard, informell bekannt als C++98. Es wird gesagt, dass das „Annotated C++ Reference Manual“ einen großen Einfluss auf die Formulierung des Standards hatte. Ebenfalls enthalten ist die Standard-Vorlagenbibliothek, deren Konzeptentwicklung 1979 begann. Im Jahr 2003 reagierte das Komitee auf mehrere in den Standards von 1998 gemeldete Probleme und überarbeitete sie entsprechend. Die geänderte Sprache heißt C++03.
Im Jahr 2005 veröffentlichte das C++ Standards Committee einen technischen Bericht (genannt TR1), in dem verschiedene Funktionen detailliert beschrieben wurden, die sie dem neuesten C++-Standard hinzufügen wollten. Der neue Standard ist informell als C++0x bekannt, da seine Veröffentlichung voraussichtlich irgendwann vor dem Ende des ersten Jahrzehnts erfolgen wird. Ironischerweise wird der neue Standard erst Mitte 2011 veröffentlicht. Bis zu diesem Zeitpunkt waren mehrere technische Berichte veröffentlicht worden und einige Compiler hatten damit begonnen, experimentelle Unterstützung für neue Funktionen hinzuzufügen.
Mitte 2011 wurde der neue C++-Standard (genannt C++11) fertiggestellt. Das Boost-Bibliotheksprojekt hatte erhebliche Auswirkungen auf den neuen Standard, da einige der neuen Module direkt aus den entsprechenden Boost-Bibliotheken stammten. Zu den neuen Funktionen gehören die Unterstützung regulärer Ausdrücke, eine umfassende Randomisierungsbibliothek, eine neue C++-Timing-Bibliothek, atomare Unterstützung, eine Standard-Threading-Bibliothek, eine neue for-Schleifensyntax, die ähnliche Funktionen wie foreach-Schleifen in einigen anderen Sprachen bietet, das Schlüsselwort auto und neu Containerklassen, bessere Unterstützung für Union- und Array-Initialisierungslisten sowie variadische Vorlagen.
Im Jahr 2014 wurde C++ 14 (auch bekannt als C++ 1y) als kleine Erweiterung von C++ 11 veröffentlicht. Seine Hauptfunktionen sind Fehlerbehebungen und kleine Verbesserungen. Der Entwurf des internationalen Standardabstimmungsverfahrens wurde Mitte August 2014 fertiggestellt Lambda-Funktion. constexpr und Typinferenzfunktionen.
Im Jahr 2017 wurde der C17-Standard veröffentlicht. Verbesserungen an der Kernsprache und den Bibliotheken.
Im Jahr 2020 wurde der C++20-Standard veröffentlicht, der viele wichtige Funktionen einführte, von denen die wichtigsten sind:
Konzepte: Konzepte verändern die Art und Weise, wie wir über Vorlagen denken und sie programmieren. Sie sind semantische Kategorien von Vorlagenparametern. Sie ermöglichen es Ihnen, Ihre Absichten direkt im Typsystem auszudrücken. Wenn etwas schief geht, erhalten Sie klare Fehlermeldungen.
Ranges-Bibliothek: Die neue Ranges-Bibliothek ermöglicht es, Algorithmen direkt auf Containern auszuführen, sie mit Pipe-Notation zusammenzusetzen und sie auf unendliche Datenströme anzuwenden.
Coroutinen: Asynchrone Programmierung in C++ wird dank Coroutinen zum Mainstream. Coroutinen sind die Grundlage für kollaborative Aufgaben, Ereignisschleifen, unendliche Datenströme oder Pipelines.
Module: Module überwinden die Einschränkungen von Header-Dateien. Die Trennung von Header-Dateien und Quelldateien ist ebenso obsolet wie Präprozessoren. Endlich haben wir schnellere Build-Zeiten und eine einfachere Möglichkeit, Pakete zu erstellen.
Parallelität: Atomic Smart Pointers, Joining & Cancelnable Threads, die C20-Synchronisationsbibliothek, die die Möglichkeiten der gleichzeitigen Programmierung in C++ erweitert;
C++-Tutorial
Einführung in C++
C++-Umgebungseinstellungen
Grundlegende C++-Syntax
C++-Kommentare
C++-Datentypen
C++-Variablentypen
C++-Variablenbereich
C++-Konstanten
C++-Modifikatortypen
C++-Speicherklasse
C++-Operatoren
C++-Schleife
C++-Urteil
C++-Funktion
C++-Zahlen
C++-Array
C++-Zeichenfolge
C++-Zeiger
C++-Referenzen
C++ Datum und Uhrzeit
Grundlegende C++-Eingabe und -Ausgabe
C++-Datenstrukturen
C++-Klassen und -Objekte
C++-Vererbung
Überladene C++-Operatoren und überladene Funktionen
C++-Polymorphismus
C++-Datenabstraktion
C++-Datenkapselung
C++-Schnittstelle (abstrakte Klasse)
C++-Dateien und Streams
C++-Ausnahmebehandlung
Dynamischer C++-Speicher
C++-Namespace
C++-Vorlage
C++-Präprozessor
C++-Signalverarbeitung
C++-Multithreading
C++-Webprogrammierung
C++ STL-Tutorial
C++-Standardbibliothek
1. Grundkenntnisse
8.1 Grundbegriffe von Bauwerken
8.2 Strukturdefinition und Verwendung
8.3 Strukturarray
8.4 Strukturzeiger
8.5 Struktur Verschachtelte Struktur
8.6 Struktur als Funktionsparameter
8.7 Const-Nutzungsszenarien in Strukturen
7.1 Grundkonzepte von Zeigern
7.2 Definition und Verwendung von Zeigervariablen
7.3 Durch Zeiger belegter Speicherplatz
7.4 Nullzeiger und Wildzeiger
7.5 const modifizierter Zeiger
7.6 Zeiger und Arrays
7.7 Zeiger und Funktionen
7.8 Zeiger, Arrays, Funktionen
1. goto-Anweisung (nicht empfohlen)
2. Eindimensionales Array
3. Zweidimensionales Array
4. Wertübertragung in Funktionen
5. Funktionsdeklaration
6. Funktionen in separate Dateien schreiben
7. Zeiger
8. Struktur
2. Kernprogrammierung
3.1 Standardparameter der Funktion
3.2 Funktionsplatzparameter
3.3 Funktionsüberlastung
2.1 Grundlegende Verwendung von Referenzen
2.2 Hinweise zum Zitieren
2.3 Referenz als Funktionsparameter
2.4 Referenz als Funktionsrückgabewert
2.5 Die Art von Zitaten
2.6 Konstante Referenzen
1.1 Vor dem Ausführen des Programms
1.2 Nach dem Ausführen des Programms
1.3 neuer Betreiber
1. Speicherpartitionsmodell
2. Zitat
3. Funktion
„Vertieftes Verständnis von C++11: Analyse und Anwendung neuer Funktionen von C++11“
„C++-Einführungsklassiker (10. Ausgabe)“
„C++ Primer Plus 6. Auflage, chinesische Version (hergestellt von Asynchronous Books)“
„Tsinghua Computer Book Translation Series: Mastering C++ (9. Auflage)“
„Fortgeschrittene Programmierung in C++ (4. Auflage)“
„Einführung in die C++-Spielprogrammierung (4. Auflage) (hergestellt von Asynchronous Books)“
„STL-Quellcode-Analyse“
„C++-Programmierung: Prinzipien und Praxis (Grundlagen) (Originalbuch, 2. Auflage)“
„Beschleunigte chinesische C++-Version“
„Gedanken zur C++-Programmierung (zwei Bände)“
„Chinesische Version von Effective STL: 50 Erfahrungen mit der effektiven Nutzung von STL“
„Anatomie der C++-Programmierung: Probleme, Lösungen und Designrichtlinien“
„C++-Vorlagen chinesische Version“
„Neues Denken im C++-Design“
„C++-Vorlagen-Metaprogrammierung“
„Praxis der gleichzeitigen C++-Programmierung“
„Programmiersprache C++ (Teil 1–3) (Originalbuch, 4. Auflage)“
„C++-Standardbibliothek (2. Auflage)“
„Grundlegendes C++“
„Das Design und die Entwicklung der C++-Sprache“
„Eingehende Untersuchung des C++-Objektmodells“
„Generische Programmierung und STL“
10 C++11-Funktionen, die jeder C++-Entwickler verwenden sollte
15 C++11-Funktionen, die Sie tatsächlich in Ihren C++-Projekten verwenden müssen
So verwenden Sie Lambda-Ausdrücke in C++11
Tiefes Verständnis von C++11
Sortierung nach Bluterbrechen: neue Funktionen von C++11
Neue C++11-Funktionen für Auto- und Decltype-Wissenspunkte
Neue Funktionen von C++11: L-Wert-Referenz, R-Wert-Referenz, Verschiebungssemantik, perfekte Weiterleitung
Initialisierung der C++11-Liste neuer Funktionen
C++11 neue Funktionen std::function und Lambda-Ausdrücke
Neue Funktionen von C++11: Vorlagenverbesserungen
C++11 neue Funktionen und Thread-bezogene Wissenspunkte
C++11 neue Funktionen asynchrone Operationen – asynchron
Neue C++11-Funktionen für intelligente Zeiger
Allgemeine neue Funktionen von C++11 (1)
Allgemeine neue Funktionen von C++11 (2)
Eine kurze Diskussion über die neuen Funktionen von C++14
Alle Wissenspunkte zu den neuen Funktionen von C++14 finden Sie hier
Zusammenfassung: Neue Funktionen von C++17
C++20-Sprachfunktionen
P1 Einführung in die C++-Programmierung
P2-Header-Datei und Klassendeklaration
P3-Konstruktor
P4 Parameterübergabe und Rückgabewert
Überlastung des P5-Operators und temporäre Objekte
P6 Überprüfen Sie den Implementierungsprozess der Complex-Klasse
P7 hat drei Hauptfunktionen: Kopierkonstruktion, Kopierreplikation und Zerstörung
P8 Heap-, Stack- und Speicherverwaltung
P9 Überprüfen Sie den Implementierungsprozess der String-Klasse
P10-Erweiterungen: Klassenvorlagen, Funktionsvorlagen und andere
P11 Zusammensetzung und Vererbung
P13 Auftragsbezogene Entwürfe
P14 1 Einführung
P15 2 Konvertierungsfunktion
P16 3 nicht expliziter Konstruktor mit einem Argument
P17 4 zeigerartige Klassen
P18 5 funktionieren wie Klassen
P19 6-Namespace-Erfahrungsdiskussion
Vorlage für P20 7-Klassen
P21 8 Funktionsvorlage
P22 9-Mitgliedervorlage
P23 10 Spezialisierung
P24 11 Vorlage Teilspezialisierung
P25 12 Vorlagenparameter
P26 13 Über die C++-Standardbibliothek
P27 14 Drei Themen
S28 15 Referenz
P29 16 Aufbau und Zerstörung im Rahmen einer Verbund- und Vererbungsbeziehung
P30 17 Über vptr und vtbl
P31 18 Darüber
P32 19 0 Über dynamische Bindung
P33 19 1 Über dynamische Bindung
S34 20 Über Neu,Löschen
P35 21 Operator neu, Operator löschen
P36 22 Beispiel
P37 23 Überladen new,delete$ Beispiel
P38 24 Basic String verwendet Newextra, um das Anwendungsvolumen zu erweitern
C++-Standardbibliothek – eine Sammlung von Klassen und Funktionen, die in der Kernsprache geschrieben sind und Teil des C++-ISO-Standards selbst sind
Standardvorlagenbibliothek – Standardvorlagenbibliothek
C POSIX-Bibliothek – C-Standardbibliotheksspezifikation für POSIX-Systeme
ISO C++-Standardkomitee – C++-Standardkomitee
C++ FAQ – Häufig gestellte Fragen zu C++
Free Country – Free Country bietet kostenlosen C++-Quellcode und C++-Bibliotheken, die C++-Programmierbereiche wie Komprimierung, Archivierung, Spieleprogrammierung, Standardvorlagenbibliotheken und GUI-Programmierung abdecken.
C- und C++-Benutzergruppe – Die C- und C++-Benutzergruppe stellt kostenlosen Quellcode für C++-Projekte bereit, die verschiedene Programmierbereiche abdecken, darunter KI, Animation, Compiler, Datenbanken, Debugging, Verschlüsselung, Spiele, Grafiken, GUI, Sprachtools, Systemprogrammierung usw .
LearnCpp – Lernen Sie kostenlos C++-Programmierung
CodeCogs – CodeCogs ist eine kollaborative Open-Source-Bibliothek numerischer Komponenten für C/C++
codeproject – C/C++-Ressourcencodeprojekt, bereitgestellt von codeproject
Thoughtco – spielbezogener C++-Quellcode
Kostenlose C/C++-Bibliotheken – Kostenloser C++-Quellcode und andere nützliche Tools
Die C++-Standardbibliothek – Dies ist eine Webseite, die eine Liste von Links zu mehreren C/C++-Websites sammelt
cplusplus – C++-Lernwebsite
C++-Quellcodes – Dies ist eine umfassende Liste von 345 Quellcodes für C++
Apache C++-Standardbibliothek: ist eine Sammlung von Algorithmen, Containern, Iteratoren und anderen Grundkomponenten
ASL: Adobe Source Code Library bietet eine von Experten überprüfte und portable C++-Quellcodebibliothek.
Boost: Eine große Sammlung universeller C++-Bibliotheken.
BDE: Entwicklungsumgebung von Bloomberg Intelligence Labs.
Cinder: Eine Open-Source-Entwicklungsgemeinschaft, die kreative Programmierung in professioneller Qualität bietet.
Bxxomfort: Eine leichte, reine Header-Bibliothek, die einige der neuen Funktionen von C++11 nach C++03 portiert.
Dlib: Eine universelle plattformübergreifende C++-Bibliothek, die mithilfe von Vertragsprogrammierung und moderner C++-Technologie entwickelt wurde.
EASTL: Öffentlicher Teil von EA-STL
ffead-cpp: Framework für die Entwicklung von Unternehmensanwendungen
Folly: Eine Open-Source-C++-Bibliothek, die von Facebook entwickelt und verwendet wird.
JUCE: Eine umfassende C++-Bibliothek zur Entwicklung plattformübergreifender Software
libphenom: Ein Event-Framework zum Aufbau leistungsstarker und hoch skalierbarer Systeme.
LibSourcey: C++11-Ereignis-IO für Echtzeit-Video-Streaming und leistungsstarke Netzwerkanwendungen
Loki: Der Entwurf einer C++-Bibliothek, einschließlich der Implementierung gängiger Entwurfsmuster und Redewendungen.
MiLi: Eine kleine C++-Bibliothek nur für Header
openFrameworks: Entwickeln Sie ein C++-Toolkit für kreatives Codieren.
Qt: Plattformübergreifendes Anwendungs- und Benutzeroberflächen-Framework
Grund: Ein plattformübergreifendes Framework, das Entwicklern die Verwendung von Java, .Net und Python erleichtert und gleichzeitig ihren Anforderungen an die Leistung und Vorteile von C++ gerecht wird.
ROOT: Eine Reihe objektorientierter Frameworks mit allen Funktionen zur sehr effizienten Verarbeitung und Analyse großer Datenmengen, die vom CERN verwendet werden.
STLport: ist eine repräsentative Version von STL
STXXL: Standard-Vorlagenbibliothek für zusätzliche große Datensätze.
Ultimate++: Plattformübergreifendes C++-Framework für die schnelle Anwendungsentwicklung
Windows-Vorlagenbibliothek: C++-Bibliothek zum Entwickeln von Windows-Anwendungen und UI-Komponenten
Yomm11: Offene Multimethoden für C++11.
Boost.Asio: Plattformübergreifende C++-Bibliothek für Netzwerk- und Low-Level-I/O-Programmierung.
libev: Voll funktionsfähige, leistungsstarke Zeitschleife, die leicht an libevent angelehnt ist, aber nicht mehr die gleichen Einschränkungen wie libevent aufweist und einige seiner Fehler behoben wurden.
libevent: Ereignisbenachrichtigungsbibliothek
libuv: Plattformübergreifende asynchrone E/A.
libco: coroutine, die zugrunde liegende IO-Bibliothek von WeChat, die 800 Millionen Benutzer gleichzeitig online unterstützt. Kraftvoll
libgo: Parallelitätsframework im Golang-Stil, C++11-Implementierungs-Coroutinenbibliothek
ACE: C++ Object-Oriented Networking Toolkit
Casablanca: C++ REST SDK
cpp-netlib: Eine Sammlung von Open-Source-Bibliotheken für fortgeschrittene Netzwerkprogrammierung
libCurl: Multiprotokoll-Dateiübertragungsbibliothek
Mongoose: Sehr leichter Webserver
Muduo: Nicht blockierende C++-Netzwerkbibliothek für Linux-Multithread-Server
net_skeleton: TCP-Client/Server-Bibliothek für C/C++
POCO: C++-Klassenbibliothek zum Erstellen netzwerk- und internetbasierter Anwendungen, die auf Desktop-, Server-, Mobil- und eingebetteten Systemen ausgeführt werden können.
RakNet: Eine plattformübergreifende Open-Source-C++-Netzwerk-Engine für Spieleentwickler.
Tufao: Ein asynchrones Web-Framework, das in C++ auf Qt basiert.
WebSocket++: WebSocket-Client/Server-Bibliothek basierend auf C++/Boost Aiso
ZeroMQ: Hochgeschwindigkeitsbibliothek für modulare asynchrone Kommunikation
f-stack: Tencents Open-Source-Protokollstack, ein leistungsstarker Benutzermodus-Protokollstack basierend auf DPDK.
NtyTcp: Single-Threaded-Protokollstapel, basierend auf Netmap-, DPDK- und RawSocket-Implementierung.
LWIP: Eine optimierte Version der TCP/IP-Protokollstack-Implementierung für die RAM-Plattform.
mTCP: Ein hoch skalierbarer User-Space-TCP/IP-Protokollstack für Multi-Core-Systeme.
4.4BSD: * Der Nix-Protokollstapel ist von 4.4BSD abgeleitet.
Nginx: Ein leistungsstarker HTTP- und Reverse-Proxy-Webserver, der auch IMAP/POP3/SMTP-Dienste bereitstellt.
Lighttpd: Eine Open-Source-Webserversoftware, die sicher, schnell, konform mit Industriestandards, hochgradig anpassungsfähig und für hochkonfigurierte Umgebungen optimiert ist.
Libmicrohttpd: Ein einfacher C-Bibliotheks-Webserver unter GNU-Software. Die API ist einfach und schnell.
shttpd: Mongoose-basiertes Webserver-Framework.
CivetWeb: Bietet einen benutzerfreundlichen, leistungsstarken, in C/C++ eingebetteten Webserver mit optionaler CGI-, SSL- und Lua-Unterstützung.
CppCMS: Kostenloses Hochleistungs-Webentwicklungs-Framework (kein CMS).
Crow: Ein C++-Micro-Web-Framework (inspiriert von Python Flask)
Kore: Ultraschneller und flexibler Webserver/Framework für Webanwendungen, entwickelt in C.
libOnion: Eine schlanke Bibliothek, die Sie beim Erstellen von Webservern mit der Programmiersprache C unterstützt.
QDjango: Ein in C++ geschriebenes Web-Framework, das auf der Qt-Bibliothek basiert und versucht, die Django-API zu emulieren, daher der Name.
Wt: C++-Bibliothek zur Entwicklung von Webanwendungen.
C++-Standardbibliothek: Es handelt sich um eine Sammlung von Klassen und Funktionen, die in der Kernsprache geschrieben sind und Teil des C++-ISO-Standards selbst sind.
Standardvorlagenbibliothek: Standardvorlagenbibliothek, STL
ISO C++-Standardkomitee: C++-Standardkomitee
FMOD: Einfach zu verwendende plattformübergreifende Audio-Engine und Tool zur Erstellung von Audio-Content-Spielen.
Maximilian: C++-Bibliothek für digitale Audio- und Musiksignalverarbeitung
OpenAL: Open-Source-Audiobibliothek – plattformübergreifende Audio-API
Opus: ein völlig offener, lizenzfreier und äußerst vielseitiger Audio-Codec
Speex: Kostenloser Codec, von Opus veraltet
Tonic: Benutzerfreundliche und effiziente Audiosynthese in C++
Vorbis: Ogg Vorbis ist ein völlig offenes, nicht proprietäres, lizenzfreies, universelles komprimiertes Audioformat.
lisequence: Eine C++-Bibliothek zur Darstellung und Analyse von Populationsgenetikdaten.
SeqAn: Konzentriert sich auf Algorithmen und Datenstrukturen für die Sequenzanalyse biologischer Daten.
Vcflib: C++-Bibliothek zum Parsen und Verarbeiten von VCF-Dateien
Wham: Wenden Sie Assoziationstests direkt auf genetische Strukturvarianten in BAM-Dateien an.
bzip2: Eine völlig kostenlose, patentfreie und hochwertige Datenkomprimierung
doboz: Komprimierungsbibliothek für schnelle Dekomprimierung
PhysicsFS: Eine Bibliothek, die abstrakten Zugriff auf verschiedene Archive bietet und hauptsächlich in Videospielen verwendet wird. Das Design wurde teilweise vom Dateisubsystem von Quake3 inspiriert.
KArchive: Eine Bibliothek zum Erstellen, Lesen, Schreiben und Bearbeiten von Dateiarchiven (z. B. zip und tar), die eine transparente Komprimierung und Dekomprimierung von Daten mithilfe des gzip-Formats über eine Reihe von Unterklassen von QIODevice ermöglicht.
LZ4: Sehr schneller Komprimierungsalgorithmus
LZHAM: Verlustfreie Komprimierungsdatenbank, das Komprimierungsverhältnis liegt nahe bei LZMA, aber die Dekomprimierungsgeschwindigkeit ist viel schneller.
LZMA: Die standardmäßige und gängige Komprimierungsmethode für das 7z-Format.
LZMAT: und seine schnelle verlustfreie Datenkomprimierungsbibliothek in Echtzeit
Minizip: Zlibs neueste Fehlerbehebung, unterstützt PKWARE-Disk-Spanning, AES-Verschlüsselung und IO-Pufferung.
Snappy: schnelle Komprimierung und Dekomprimierung
ZLib: Sehr kompakte Datenstrom-Komprimierungsbibliothek
ZZIPlib: Bietet Lesezugriff auf ZIP-Archive.
Boost.Compute: C++-GPU-Computing-Bibliothek für OpenCL
Bolt: Eine für GPUs optimierte C++-Vorlagenbibliothek
C++React: Reaktive Programmierbibliothek für C++11
Intel TBB: Intel Threading-Bausteine
Libclsph: GPU-beschleunigte SPH-Flüssigkeitssimulationsbibliothek basierend auf OpenCL
OpenCL: Ein offener Standard zur parallelen Programmierung heterogener Systeme
OpenMP: OpenMP-API
Thrust: Eine parallele Algorithmusbibliothek ähnlich der C++-Standardvorlagenbibliothek
HPX: Ein universelles C++-Laufzeitsystem für parallele und verteilte Anwendungen jeder Größe
VexCL: C++-Vektorausdrucksvorlagenbibliothek für OpenCL/CUDA.
Bcrypt: Ein plattformübergreifendes Tool zur Dateiverschlüsselung. Verschlüsselte Dateien sind auf alle unterstützten Betriebssysteme und Prozessoren portierbar.
BeeCrypt: Eine schnelle Verschlüsselungsgrafikbibliothek mit leistungsstarken Funktionen und praktischer Benutzeroberfläche.
Botan: C++-Verschlüsselungsbibliothek
Crypto++: Eine kostenlose C++-Bibliothek für Verschlüsselungsschemata
GnuPG: Eine vollständige Implementierung des OpenPGP-Standards
GnuTLS: Eine sichere Kommunikationsbibliothek, die SSL-, TLS- und DTLS-Protokolle implementiert
Libgcrypt: GnuPG-basierte Verschlüsselungsgrafikbibliothek.
Libmcrypt: Thread-sicher, bietet eine einheitliche API.
LibreSSL: Kostenloses SSL/TLS-Protokoll, eine Abzweigung von OpenSSL 2014
LibTomCrypt: Ein sehr umfassendes, modulares und tragbares Verschlüsselungstool
libsodium: NaCI-basierte Verschlüsselungsbibliothek, die eigensinnig und einfach zu verwenden ist
Nettle: die zugrunde liegende Verschlüsselungsbibliothek
OpenSSL: Eine leistungsstarke, kommerzielle Open-Source-Verschlüsselungsbibliothek mit vollem Funktionsumfang.
hiberlite: C++ objektrelationale Zuordnung für Sqlite3
LevelDB: schneller Schlüsselwertspeicher
LMDB: ein eingebetteter Schlüsselwertspeicher, der den vier Grundelementen einer Datenbank entspricht
MySQL++: Ein C++-Wrapper, der die C-API von MySql kapselt
RocksDB: Schnelle Speicherung eingebetteter Schlüsselwerte von Facebook
SQLite: Eine vollständig eingebettete relationale Datenbank mit vollem Funktionsumfang, die nur wenige hundert KB groß ist und korrekt in Ihr Projekt eingebunden werden kann.
MongoDB: eine Datenbank, die auf verteilter Dateispeicherung basiert
Boost.Test: Boost-Testbibliothek
Haken: Ein sehr elegantes, natives C++-Framework, das nur Header-Dateien für Unit-Tests, testgetriebene Entwicklung und verhaltensgesteuerte Entwicklung enthält.
CppUnit: C++-Testframework, portiert von JUnit
GoogleTest: Google C++-Testframework
ig-debugheap: Plattformübergreifender Debug-Heap zur Verfolgung von Speicherfehlern
MemTrack: zum Verfolgen von Speicherzuweisungen in C++
MicroProfile: Plattformübergreifender Netzwerkversuchsprofiler
UnitTest++: leichtes C++-Unit-Test-Framework
C++ B-Tree: Eine Vorlagenbibliothek, die Befehlsspeichercontainer basierend auf der B-Tree-Datenstruktur implementiert
Hashmaps: Implementierung eines offenen Adressierungs-Hash-Tabellenalgorithmus in C++
Cocos2d-x: Ein plattformübergreifendes Framework zum Erstellen von 2D-Spielen, interaktiven Büchern, Präsentationen und anderen Grafikanwendungen.
Grit: Ein Community-Projekt zum Aufbau einer kostenlosen Spiel-Engine für Open-World-3D-Spiele.
lrrlicht: eine Open-Source-Hochleistungs-Echtzeit-#D-Engine, geschrieben in der Sprache C++
PolyCode: Ein Open-Source-Framework zum Erstellen von Spielen, implementiert in C++ (im Paket mit Lua).
bgfx: plattformübergreifende Rendering-Bibliothek
Kairo: 2D-Grafikbibliothek, die mehrere Ausgabegeräte unterstützt
Horde3D: Eine kleine 3D-Rendering- und Animations-Engine
magnum: C++11 und OpenGL 2D/3D-Grafik-Engine
Ogre 3D: Eine szenenorientierte, flexible 3D-Rendering-Engine in Echtzeit, geschrieben in C++ (keine Spiel-Engine)
OpenSceneGraph: Leistungsstarkes Open-Source-3D-Grafik-Toolkit
Panda3D: Framework für 3D-Rendering und Spieleentwicklung, geschrieben in Python und C++.
Skia: Eine vollständige 2D-Grafikbibliothek zum Zeichnen von Text, Grafiken und Bildern
urho3d: Plattformübergreifende Rendering- und Game-Engine.
Boost.GIL: Allgemeine Bildbibliothek
CImg: Ein kleines Open-Source-C++-Toolkit für die Bildverarbeitung
FreeImage: Eine Open-Source-Bibliothek, die gängige Bildformate und andere Formate unterstützt, die für heutige Multimedia-Anwendungen erforderlich sind.
GDCM: Grassroots-DICOM-Bibliothek
ITK: Plattformübergreifendes Open-Source-Bildanalysesystem
Magick++: C++-Schnittstelle zum ImageMagick-Programm
OpenCV: Open-Source-Computer-Vision-Bibliothek
tesseract-ocr: OCR-Engine
VIGRA: Universelle C++-Computer-Vision-Bibliothek für die Bildanalyse
VTK: Open-Source-freies Softwaresystem für 3D-Computergrafik, Bildverarbeitung und Visualisierung.
gettext: GNU gettext
IBM ICU: C-, C++- und Java-Bibliotheken mit Unicode- und Globalisierungsunterstützung
libiconv: Kodierungskonvertierungsbibliothek zwischen verschiedenen Zeichenkodierungen
eingefroren: Jason Parsing-Generator für C/C++
Jansson: C-Sprachbibliothek zum Kodieren, Dekodieren und Verarbeiten von Jason-Daten
jbson: Eine Bibliothek zum Erstellen und Iterieren von BSON-Daten und Json-Dokumenten in C++14
JeayeSON: Eine sehr robuste C++-JSON-Bibliothek, die nur Header-Dateien enthält
JSON++: C++-JSON-Parser
json-parser: JSON-Parser, geschrieben in portablem ANSI C mit sehr geringem Speicherbedarf
json11: Eine Mini-C++11-JSON-Bibliothek
jute: Sehr einfacher C++-JSON-Parser
ibjson: JSON-Parsing- und Druckbibliothek in C, einfach in jedes Modell integrierbar
libjson: leichte JSON-Bibliothek
PicoJSON: JSON-Parsing und Serialisierung in C++, einschließlich nur Header-Dateien
Qt-Json: Eine einfache Klasse zum Parsen zwischen JSON-Daten und QVariant-Hierarchien
QJson: Qt-basierte Bibliothek zum Zuordnen von JSON-Daten zu QVariant-Objekten
RepidJSON: Ein schneller JSON-Parsing-Generator für C++, einschließlich APIs im SAX- und DOM-Stil
Boost.Log: Sehr modular und erweiterbar konzipiert
easyloggingpp: C++-Protokollierungsbibliothek, die nur eine einzige Header-Datei enthält.
Log4cpp: Eine Reihe von C++-Bibliotheken, die flexibel Protokolle zu Dateien, Systemprotokollen, IDSA und anderen Orten hinzufügen.
templog: Eine leichtgewichtige C++-Bibliothek, die Protokollierung zu Ihren C++-Anwendungen hinzufügen kann
btsk: Tool zum Starten des Spielverhaltensbaums
Evolving Objects: Vorlagenbasierte ANSI C++-Bibliothek für evolutionäres Rechnen, mit der Sie sehr schnell Ihre eigenen Algorithmen zur stochastischen Optimierung schreiben können.
Caffe: ein schnelles neuronales Netzwerk-Framework
CCV: Eine moderne Computer-Vision-Bibliothek mit C-Sprache als Kern
mlpack: Erweiterbare C++-Bibliothek für maschinelles Lernen
OpenCV: Open-Source-Computer-Vision-Bibliothek
Recommender: Eine C-Bibliothek für Produktempfehlungen/-vorschläge mit kollaborativer Filterung.
SHOGUN: Shogun-Tool für maschinelles Lernen
sofia-ml: Eine Suite schneller inkrementeller Algorithmen für maschinelles Lernen
Armadillo: Eine hochwertige C++-Bibliothek für lineare Algebra, die ein gutes Gleichgewicht zwischen Geschwindigkeit und Benutzerfreundlichkeit bietet. Die Syntax ist MatlAB sehr ähnlich
blaze: Hochleistungsfähige C++-Mathematikbibliothek für dichte und spärliche Algorithmen.
ceres-solver: Eine C++-Bibliothek von Google zum Modellieren und Lösen großer komplexer nichtlinearer Kleinste-Quadrate-Probleme.
CGal: Eine Sammlung effizienter, zuverlässiger Mengenalgorithmen
CML: Kostenlose C++-Mathematikbibliothek für Spiele und Grafiken
Eigen: Eine High-Level-C++-Vorlagen-Header-Bibliothek, die lineare Algebra, Matrix, Vektoroperationen, numerisches Lösen und andere verwandte Algorithmen abdeckt.
GMTL: Mathematical Graphics Template Library ist eine Reihe von Werkzeugen zur umfassenden Implementierung grundlegender Grafiken.
GMP: Eine C/C++-Bibliothek für hochpräzise Berechnungen, die sich mit vorzeichenbehafteten Ganzzahlen, rationalen Zahlen und Gleitkommazahlen befasst.
GStreamer: Eine Bibliothek zum Erstellen von Diagrammen von Medienverarbeitungskomponenten
LIVE555 Streaming Media: Multimedia-Streaming-Bibliothek mit offenen Standardprotokollen (RTP/RTCP, RTSP, SIP)
libVLC: libVLC (VLC SDK) Medienframework
QtAV: Ein auf Qt und FFmpeg basierendes Multimedia-Wiedergabe-Framework, mit dem Sie ganz einfach einen Player schreiben können
SDL: Einfache direkte Steuerung der Medienschicht
SFML: Schnelle, einfache Multimedia-Bibliothek
Box2D: 2D-Spielphysik-Engine.
Bullet: Physik-Engine für 3D-Spiele.
Chipmunk: Schnelle, leichte 2D-Spielphysik-Bibliothek
LiquidFun: 2D-Spielphysik-Engine
ODE: Open Dynamics Engine – eine Open-Source-Hochleistungsbibliothek zur Simulation der Dynamik starrer Körper.
ofxBox2D: Box2D-Open-Source-Framework-Wrapper.
Simbody: Eine leistungsstarke C++-Mehrkörper-Dynamik-/Physik-Bibliothek zur Simulation der Gelenkbiomechanik und mechanischer Systeme wie Fahrzeuge, Roboter und menschliche Skelette.
MOOS-Ivp: Eine Reihe von Open-Source-C++-Modulen, die Autonomie für Roboterplattformen, insbesondere autonome Seefahrzeuge, bieten.
MRPT: Mobile Robot Programming Toolkit
PCL: Point Cloud Library ist ein unabhängiges, groß angelegtes offenes Projekt für die 2D/3D-Bild- und Punktwolkenverarbeitung.
Robotik-Bibliothek: Eine eigenständige C++-Bibliothek einschließlich Roboterdynamik, Bewegungsplanung und -steuerung.
RobWork: Eine Sammlung von C++-Bibliotheken zur Simulation und Steuerung von Robotersystemen.
ROS: Robot Operating System, das Bibliotheken und Tools bereitstellt, um Softwareentwicklern bei der Erstellung von Roboteranwendungen zu helfen.
ChaiScript: Eine benutzerfreundliche eingebettete Skriptsprache für C++.
Lua: Eine kleine und schnelle Skript-Engine für Konfigurationsdateien und grundlegende Anwendungsskripte.
luacxx: C++11-API zum Erstellen von Lua-Bindungen
SWIG: Ein Wrapper/Schnittstellengenerator, der Ihren C++-Code mit JavaScript, Perl, PHP, Python, Tcl und Ruby verknüpfen lässt
V7: Eingebettete JavaScript-Engine.
V8: Googles schnelle JavaScript-Engine, die in jede C++-Anwendung eingebettet werden kann.
Cap'n Proto: Schnelles Datenaustauschformat und RPC-System.
Cerealien: C++11-Serialisierungsbibliothek
FlatBuffers: Speichereffiziente Serialisierungsbibliothek
MessagePack: Effiziente binäre Serialisierungsbibliothek für C/C++, wie z. B. JSON
ProtoBuf: Protokollpuffer, das Datenaustauschformat von Google.
SimpleBinaryEncoding: Kodierung und Dekodierung von Anwendungsinformationen im Binärformat für Anwendungen mit geringer Latenz.
Thrift: Effizienter sprachübergreifender IPC/RPC, verwendet in C++, Java, Python, PHP, C# und vielen anderen Sprachen, ursprünglich von Facebook entwickelt.
libvpx: VP8/VP9-Codierungs- und Decodierungs-SDK
FFMpeg: Eine komplette, plattformübergreifende Lösung zum Aufzeichnen und Konvertieren von Video- und Audiostreams.
libde265: Offene Implementierung des h.265-Videocodecs.
OpenH264: Open-Source-H.364-Codec.
Theora: Kostenloses und Open-Source-Videokomprimierungsformat.
LibXml++: XML-Parser für C++
PugiXML: Ein leichter, einfacher und schneller XML-Parser für C++, der XPath unterstützt.
RapidXML: Versucht, den schnellsten XML-Parser zu erstellen und gleichzeitig Benutzerfreundlichkeit, Portabilität und angemessene W3C-Kompatibilität beizubehalten.
TinyXML: Ein einfacher und kleiner C++ XML-Parser, der problemlos in andere Projekte integriert werden kann.
TinyXML2: Ein einfacher und schneller C++-CML-Parser, der problemlos in andere Projekte integriert werden kann.
TinyXML++: Eine völlig neue Schnittstelle zu TinyXML, die viele Vorteile von C++, Vorlagen, Ausnahmen und eine bessere Ausnahmebehandlung nutzt.
Xerces-C++: XML-Validierungsparser, geschrieben in einer Teilmenge von portablem C++.
thread_local
static_assert
nullptr
Nein, außer
decltype
constexpr
char16_t
char32_t
ausrichten
alignas
Auto
Klasse
Standard
löschen
Export
extern
im Einklang
veränderlich
Größe von
Struktur
verwenden
is_void
is_integral
is_floating_point
is_array
is_enum
is_union
is_class
is_function
is_pointer
is_lvalue_reference
is_rvalue_reference
is_member_object_pointer
is_member_function_pointer
is_fundamental
is_arithmetic
is_scalar
is_object
is_compound
is_reference
is_member_pointer
is_const
is_volatile
ist_trivial
ist_trivial_kopierbar
is_standard_layout
is_literal_type
ist_leer
ist_polymorph
ist_abstrakt
is_signed
is_unsigned
ist_konstruierbar
ist_trivial_konstruierbar
is_nothrow_constructible
is_default_constructible
is_trivially_default_constructible
is_nothrow_default_constructible
is_copy_constructible
is_trivially_copy_constructible
is_nothrow_copy_constructible
is_move_constructible
is_trivially_move_constructible
is_nothrow_move_constructible
ist_zuweisbar
ist_trivial_zuweisbar
is_nothrow_assignable
is_copy_assignable
is_trivially_copy_assignable
is_nothrow_copy_assignable
is_move_assignable
is_trivially_move_assignable
is_nothrow_move_assignable
ist_zerstörbar
ist_trivial_zerstörbar
is_nothrow_destructible
has_virtual_destructor
std::array
std::forward_list
std::begin
std::end
std::move
Containerinitialisierung
platzieren
std::unordered_map
std::unordered_multimap
std::unordered_set
std::unordered_multiset
std::make_tuple
std::get
std::tie
std :: hash <std :: string>
std :: hash <std :: u16string>
std :: hash <std :: u32string>
std :: hash <std :: wstring>
std :: hash <std :: error_code>
std :: hash <std :: bitset>
std :: hash <std :: type_index>
std::hash<std::vector<bool>>
std::shared_ptr
std::weak_ptr
std::unique_ptr
auto_ptr(弃用)
basic_regex
sub_match
Match_results
Lebenslauf qualifizierte Funktion
引用限定
std::function
std::bind
std::bad_function_call
mem_fn
类型别名
类成员初始化
仿函数(functor)
委托构造函数
继承构造函数
Move-Konstruktor
移动赋值运算符
尖括号“>”
别名模板
外部模板
可变参数模板
默认模板参数
std :: atomic <bool>
std :: atomic <char>
std::atomic<signed char>
std::atomic<unsigned char>
std::atomic<short>
std::atomic<unsigned short>
std :: atomic <int>
std::atomic<unsigned int>
std::atomic<long>
std::atomic<unsigned long>
std::atomic<long long>
std::atomic<unsigned long long>
std::atomic<char8_t>
std::atomic<char16_t>
std::atomic<char32_t>
std::atomic<wchar_t>
std::atomic<std::int8_t>
std::atomic<std::uint8_t>
std::atomic<std::int16_t>
std::atomic<std::uint16_t>
std::atomic<std::int32_t>
std::atomic<std::uint32_t>
std::atomic<std::int64_t>
std::atomic<std::uint64_t>
std::atomic<std::int_least8_t>
std::atomic<std::uint_least8_t>
std :: atomic <std :: int_least16_t>
std :: atomic <std :: uint_least16_t>
std :: atomic <std :: int_least32_t>
std :: atomic <std :: uint_least32_t>
std::atomic<std::int_least64_t>
std::atomic<std::uint_least64_t>
std::atomic<std::int_fast8_t>
std::atomic<std::uint_fast8_t>
std::atomic<std::int_fast16_t>
std::atomic<std::uint_fast16_t>
std::atomic<std::int_fast32_t>
std::atomic<std::uint_fast32_t>
std::atomic<std::int_fast64_t>
std::atomic<std::uint_fast64_t>
std::thread
std::mutex
std::lock
std::call_once
std::atomic
std::cond_ition_variable
std::async
flüchtig
std::future
std::thread_local
std::exception_ptr
std::make_exception_ptr
std::current_exception
std::rethrow_exception
std::nested_exception
std::throw_with_nested
std :: Rethrow_if_nested
std :: error_category
std::generic_category
std::error_condition
std::errc
std::error_code
std :: system_error
语法:__pragma(字符串字面量)
_Pragma运算符
_cplusplus宏
for循环for(x:range)
alignof
alignas
std::alignment_of
STD :: Aligned_Storage
std::max_align_t
std::align
explicit关键字
语法:static_assert(常量表达式,"提示字符串")
static assert
数字限制
原始字符串
追踪返回类型语法
Erweiterte Freundssyntax
erweiterte Ganzzahl
uneingeschränkte Vereinigung
内联名字空间
用户定义的字面量
强类型枚举
random device
std::ref和std::cref
constexpr
Lambda-Ausdruck
nullptr
防止类型收窄
初始化列表——Initializer List
initializer_list(作入参)
统一的初始化语法和语义
Pod
long long
move semantics
Referenz
c99特性
generalized SFINAE rules
检查类型是否为std::nullptr_t
is_final(检查类型是否为final 类类型)
exchange(将实参替换为一个新值,并返回其先前值)
integer_sequence(实现编译时整数数列)
rbegin (gibt einen umgekehrten Iterator zurück, der auf einen Container oder ein Array zeigt)
crbegin(返回指向一个容器或数组的逆向迭代器)
rend(返回容器或数组的逆向尾迭代器)
crend(返回容器或数组的逆向尾迭代器)
make_reverse_iterator (erstellen std :: Reverse_iterator mit Typen, die aus Argumenten abgeleitet werden)
Beginnen Sie (gibt einen Iterator zurück, der auf den Beginn des Containers oder des Arrays zeigt)
cbegin (gibt einen Iterator zurück, der auf den Beginn des Containers oder des Arrays zeigt)
Ende (gibt einen Iterator zurück, der auf das Ende des Containers oder des Arrays zeigt)
Cend (gibt einen Iterator zurück, der auf das Ende des Containers oder des Arrays zeigt)
rbegin (gibt einen umgekehrten Iterator zurück, der auf einen Container oder ein Array zeigt)
Crbegin (gibt einen umgekehrten Iterator zurück, der auf einen Container oder ein Array zeigt)
Rendieren (gibt den Reverse -Heck -Iterator des Containers oder des Arrays zurück)
crend(返回容器或数组的逆向尾迭代器)
registrieren
Byte (Byte -Typ)
is_aggregate(检查类型是否聚合类型)
is_swappable_with(检查一个类型的对象是否能与同类型或不同类型的对象交换)
is_swappable(检查一个类型的对象是否能与同类型或不同类型的对象交换)
is_nothrow_swappable_with (prüft, ob ein Objekt eines Typs mit Objekten derselben oder unterschiedlichen Typen ausgetauscht werden kann)
is_nothrow_swappable(检查一个类型的对象是否能与同类型或不同类型的对象交换)
is_invocable(检查类型能否以给定的实参类型调用(如同以std::invoke))
is_invocable_r(检查类型能否以给定的实参类型调用(如同以std::invoke))
is_nothrow_invocable(检查类型能否以给定的实参类型调用(如同以std::invoke))
is_nothrow_invocable_r(检查类型能否以给定的实参类型调用(如同以std::invoke))
invoke_result(推导以一组实参调用一个可调用对象的结果类型)
void_t(变参别名模板)
conjunction(变参的逻辑与元函数)
Disjunktion (logische oder Meta-Funktion mit variablen Parametern)
ndisjunctionegation(逻辑非元函数)
integral_constant(具有指定值的指定类型的编译期常量)
as_const(获得到其实参的const 引用)
apply(以一个实参的元组来调用函数)
make_from_tuple(以一个实参元组构造对象)
optional(可能或可能不保有一个对象的包装器)
make_optional(创建一个optional 对象)
std::swap(std::optional)(特化std::swap 算法)
std :: Hash <std :: optional> (Spezialsted :: Hash -Algorithmus)
nullopt_t(带未初始化状态的optional 类型的指示器)
bad_optional_access(指示进行了到不含值的optional 的有检查访问的异常)
nullopt(nullopt_t 类型对象)
Variante (identifizierbare Gewerkschaft vom Typ Typ)
Besuchen Sie (Rufen Sie das bereitgestellte Funktionsobjekt mit jedem Argument an, das von einer oder mehreren Varianten gehalten wird)
holds_alternative(检查某个variant 是否当前持有某个给定类型)
std::get(std::variant)(以给定索引或类型(若类型唯一)读取variant 的值,错误时抛出异常)
get_if(以给定索引或类型(若其唯一),获得指向被指向的variant 的值的指针,错误时返回空指针)
std::swap(std::variant)(特化std::swap 算法)
monostate(用作非可默认构造类型的variant 的首个可选项的占位符类型)
bad_variant_access(非法地访问variant 的值时抛出的异常)
variant_size(在编译时获得variant 可选项列表的大小)
variant_size_v(在编译时获得variant 可选项列表的大小)
variant_alternative(在编译时获得以其下标指定的可选项的类型)
variant_alternative_t (Ruft den Typ des optionalen Anzeichens zur Kompilierungszeit ab)
std :: Hash <std :: variante> (Spezialsted :: Hash -Algorithmus)
variante_npos (das Index der illegalen Variante)
jedes (ein Objekt, das Instanzen eines kopierenkonstruierbaren (redekonstruierbaren) Typs abhält)
STD :: Swap (std :: Any) (Spezialsted :: Swap -Algorithmus)
Any_Cast (Typ-safe Zugriff auf das enthaltene Objekt)
make_any (erstellen Sie ein beliebiges Objekt)
bad_any_cast (Ausnahme von Any_Cast, der nach Wert zurückgibt, wenn die Typen nicht übereinstimmen)
to_chars (Ganzzahl oder schwimmender Punktwert in das Zeichensequenzbild konvertieren)
von_chars (Zeichenfolge in Ganzzahl oder schwimmender Punktwert konvertieren)
chars_format (Geben Sie das von std :: to_chars und std :: von_chars verwendete Format an)
leer (prüfen Sie, ob der Container leer ist)
Daten (erhält einen Zeiger auf das zugrunde liegende Array)
insert_or_assign(插入元素,或若键已存在则赋值给当前元素)
try_emplace(若键不存在则原位插入,若键存在则不做任何事)
extract(从另一容器释出结点)
merge(从另一容器接合结点)
insert_or_assign(插入元素,或若键已存在则赋值给当前元素)
try_emplace(若键不存在则原位插入,若键存在则不做任何事)
extract(从另一容器释出结点)
merge(从另一容器接合结点)
<h5 id="user-content-cpp_headfile_initializer_list" tabindex="-1" class="head