C++ Einführung
C++ ist eine statisch typisierte, kompilierte, universell einsetzbare, case-sensitive, unregelmäßige Programmiersprache, die prozedurale Programmierung, objektorientierte Programmierung und generische Programmierung unterstützt.
C++ gilt als eineZwischenspracheDie Sprache kombiniert die Merkmale von High-Level- und Low-Level-Sprachen.
C++ wurde 1979 von Bjarne Stroustrup in den Bell Labs in Murray Hill, New Jersey, entworfen und entwickelt, wodurch die Sprache C weiter ausgebaut und verbessert wurde, und wurde zunächst mitClass Cbenannt. Später, im Jahr 1983, wurde sie in C++ umbenannt.
C++ ist eine Obermenge von C. Tatsächlich ist jedes gültige C-Programm ein gültiges C++-Programm.

Hinweis:Eine Programmiersprache, die statische Typisierung verwendet, führt die Typprüfung zur Kompilierzeit statt zur Laufzeit durch.
Objektorientierte Programmierung
C++ unterstützt die objektorientierte Programmierung vollständig, einschließlich der vier Hauptmerkmale der objektorientierten Entwicklung:
Kapselung: Kapselung bedeutet, Daten und Methoden zusammenzufassen, Implementierungsdetails nach außen zu verbergen und nur die von außen bereitgestellten Schnittstellen offenzulegen. Dies kann Sicherheit, Zuverlässigkeit und Flexibilität verbessern.
Vererbung: Vererbung bedeutet, eine neue Klasse von einer bestehenden Klasse abzuleiten. Die neue Klasse besitzt die Attribute und Methoden der bestehenden Klasse und kann diese Attribute und Methoden erweitern oder ändern. Dies kann die Wiederverwendbarkeit und Erweiterbarkeit des Codes verbessern.
Polymorphismus: Polymorphismus bedeutet, dass dieselbe Operation, die auf verschiedene Objekte wirkt, unterschiedliche Interpretationen und Implementierungen haben kann. Er kann durch Schnittstellen oder Vererbung implementiert werden, was die Flexibilität und Lesbarkeit des Codes verbessern kann.
Abstraktion: Abstraktion ist der Prozess, gemeinsame Merkmale aus konkreten Instanzen zu extrahieren, um abstrakte Klassen oder Schnittstellen zu bilden, was Code-Wiederverwendung und Erweiterung erleichtert. Abstrakte Klassen und Schnittstellen ermöglichen es Programmierern, sich auf High-Level-Design und Geschäftslogik zu konzentrieren, ohne sich um Implementierungsdetails auf niedriger Ebene kümmern zu müssen.
Standardbibliothek
Das Standard-C++ besteht aus drei wichtigen Teilen:
- Kernsprache, die alle Bausteine bereitstellt, einschließlich Variablen, Datentypen und Konstanten usw.
- C++-Standardbibliothek, die eine große Anzahl von Funktionen für die Bearbeitung von Dateien, Zeichenfolgen usw. bereitstellt.
- Standard Template Library (STL), die eine große Anzahl von Methoden für die Bearbeitung von Datenstrukturen usw. bereitstellt.
ANSI-Standard
Der ANSI-Standard soll die Portabilität von C++ gewährleisten – der Code, den Sie schreiben, kann auf Mac-, UNIX-, Windows- und Alpha-Computern kompiliert werden.
Da der ANSI-Standard seit Langem stabil ist, unterstützen alle großen Hersteller von C++-Compilern den ANSI-Standard.
C++ lernen
Beim Erlernen von C++ kommt es vor allem darauf an, Konzepte zu verstehen, und man sollte nicht zu tief in die technischen Details der Sprache eindringen.
Der Zweck des Erlernens einer Programmiersprache ist es, ein besserer Programmierer zu werden, das heißt, neue Systeme effizienter entwerfen und implementieren sowie alte Systeme warten zu können.
C++ unterstützt mehrere Programmierstile. Sie können Code im Stil einer beliebigen Sprache schreiben, z. B. Fortran, C oder Smalltalk. Jeder Stil kann Laufzeiteffizienz und Speichereffizienz effektiv sicherstellen.
C++ verwenden
Die Sprache C++ wird in vielen Branchen und Bereichen weit verbreitet eingesetzt, darunter:
Spieleentwicklung: C++ ist aufgrund seiner hohen Leistung und der Fähigkeit, Hardware direkt zu steuern, eine der am häufigsten verwendeten Programmiersprachen im Bereich der Spieleentwicklung. Viele große Spiel-Engines wie Unreal Engine und Unity sind in C++ geschrieben.
Entwicklung eingebetteter Systeme: C++ kann in eingebetteten Systemen wie Smartphones, Automobilen, Robotern und Haushaltsgeräten eine wichtige Rolle spielen. Da eingebettete Systeme normalerweise strenge Ressourcenbeschränkungen und Echtzeitanforderungen haben, sind die hohe Leistung und die Speicherkontrollfähigkeiten von C++ sehr nützlich.
Finanzwesen: C++ wird im Finanzbereich weit verbreitet eingesetzt, z. B. im Hochfrequenzhandel, algorithmischen Handel und Risikomanagement. Da diese Anwendungen hohe Leistung und direkte Hardwaresteuerung erfordern, ist C++ eine geeignete Wahl.
Grafik- und Bildverarbeitung: C++ kann zur Entwicklung von Grafik- und Bildverarbeitungsanwendungen verwendet werden, z. B. Computer Vision, Computergrafik und künstliche Intelligenz. Da diese Anwendungen effiziente Rechenleistung und Kontrolle über die Hardware erfordern, ist C++ eine sehr gute Wahl.
Wissenschaftliches Rechnen und numerische Analyse: C++ kann zur Entwicklung von Anwendungen für wissenschaftliches Rechnen und numerische Analyse verwendet werden, z. B. numerische Simulation und Hochleistungsrechnen. Da diese Anwendungen effiziente Rechenleistung und direkte Hardwaresteuerung erfordern, ist C++ eine sehr gute Wahl.
Standardisierung
| Veröffentlichungsdatum | Üblicher Name | Hinweise |
|---|---|---|
| 2020 | C++20, C++2a | ISO/IEC 14882:2020 |
| 2017 | C++17 | Der fünfte C++-Standard |
| 2017 | Coroutinen-TS | Erweiterung der Coroutine-Bibliothek |
| 2017 | Ranges-TS | Bereitstellung eines Scope-Mechanismus |
| 2017 | Bibliotheksgrundlagen-TS | Erweiterung der Standardbibliothek |
| 2016 | Nebenläufigkeits-TS | Erweiterungen für nebenläufige Berechnung |
| 2015 | Concepts-TS | Concepts-Bibliothek, die zur Optimierung von Compile-Time-Informationen verwendet wird |
| 2015 | TM-TS | Transaktionsspeicher-Operationen |
| 2015 | Parallelität TS | Erweiterungen für paralleles Rechnen |
| 2015 | Dateisystem TS | Dateisystem |
| 2014 | C++14 | Der vierte C++-Standard |
| 2011 | - | Dezimale Gleitkomma-Erweiterungen |
| 2011 | C++11 | Der dritte C++-Standard |
| 2010 | - | Erweiterungen mathematischer Funktionen |
| 2007 | C++TR1 | C++-Technical-Report: Bibliothekserweiterungen |
| 2006 | - | Technischer Bericht zur C++-Performance |
| 2003 | C++03 | Der zweite C++-Standard |
| 1998 | C++98 | Der erste C++-Standard |