C++, der Jumbo unter den Programmierwerkzeugen
Unter den modernen und viel genutzten Programmiersprachen ist C++ sicher die Anspruchsvollste. Sie gehört zu den mächtigsten Programmierwerkzeugen und macht effiziente, maschinennahe Programmierung auf hohem Abstraktionsniveau möglich. C++ legt einen Schwerpunkt auf die Sprachmittel zur Entwicklung von Bibliotheken. Sie favorisiert also verallgemeinerte Mechanismen gegenüber sprachlich integrierten Einzellösungen für typische Problemstellungen und erreicht damit eine hohe Flexibilität. Zum Beispiel im Fall der anpassbaren Speicherverwaltung, in die sich nahtlos eine automatische Speicherbereinigung integrieren lässt.
C++ ist eine Mehrzwecksprache, die mehreren Programmierparadigmen folgt: imperativ, strukturiert, objektorientiert, generisch und prozedural. Also quasi ein Tausendsassa, der aufgrund seiner Vielseitigkeit ähnlich stark angewendet wird wie die Programmiersprachen Java und C#. C++ wird sowohl in der Anwenderprogrammierung als auch in der Systemprogrammierung eingesetzt. Typische Bereiche sind hier Betriebssysteme, eingebettete Systeme, virtuelle Maschinen, Treiber und Signalprozessoren. Mit C++ wird heute häufig dort programmiert, wo früher ausschließlich Assemblersprachen und C zum Einsatz kamen. In der Anwendungsprogrammierung hat C++ gegenüber Java und C# etwas an Boden verloren. Es kommt jedoch immer dann zum Zuge, wenn maximale Forderungen an Effizienz gestellt werden.
Wichtige Sprachmerkmale von C++: Die Klassen haben das Merkmal der Mehrfachvererbung und virtuelle Funktionen, es sind Templates (Schablonen) und Namensräume eingerichtet. In C++ kann man Operatoren und Funktionsnamen überladen, mit Referenzen arbeiten, hat eine erweiterte Bibliothek und Operatoren für die Freispeicherverwaltung zur Verfügung. Das breite Leistungsspektrum und die Gestaltungsmöglichkeiten von C++ werden selten in vollem Umfang genutzt.
Die Geschichte von C++
Ausgangspunkt war das Laboratorium der Telefongesellschaft AT&T Bell. Dort brütete Bjarne Stroustrup ab 1979 über einer Programmiersprache, die geeignet war, große Software-Projekte effizient umzusetzen. Sein Vorbild war die Sprache Simula, die aber in ihrer Struktur zu schwierig und deshalb ungeeignet schien. Stroustrups Wahl fiel auf die Programmiersprache C, die schnellen Code produzierte und einfach auf andere Plattformen zu portieren war. Außerdem war sie stark verbreitet, denn sie wurde obligatorisch dem Betriebssystem UNIX beigefügt. Zunächst ergänzte Bjarne Stroustrup die Syntax von C um Klassen mit Datenkapselung, dann um abgeleitete Klassen, ein strengeres Typsystem, Inlinefunktionen und Standard-Argumente. Im Laufe der Jahre entwickelte er die Sprache so weiter, dass sie zu einem der umfangreichsten Programmierwerkzeuge wurde.
Anfänglich existierten unterschiedliche Dialekte von C++, die nicht einmal untereinander kompatibel waren. Es gab keine verbindlichen Standards und demzufolge immer wieder Ärger bei der Kompilierung, der Übersetzung. Deshalb erarbeitete ab 1990 die ANSI-Standardisierungsgruppe mit mehreren Komitees einen einheitlichen Standard für C++. Der erste Entwurf wurde 1995 verabschiedet, bereits ein Jahr später erschien eine nachgebesserte Version. 1998 beschäftigte sich dann auch die ISO mit C++ und gab einen eigenen Standard heraus. Dieser gilt in weiten Teilen noch heute. Wer sich nach diesem Standard richtet, kann sicher sein, dass unterschiedliche Compiler seinen C++-Code fehlerfrei übersetzen können. Im Dezember 2005 wurde dann der C++/CLI Standard von der ECMA verabschiedet. Er erweitert C++ um zusätzliche Sprachelemente.
C++ ist eine außerordentlich lebendige Sprache. Eine eigenes Komitee arbeitet permanent daran, C++ der sich schnell verändernden Computer-Technik anzupassen und bekannte Schwächen auszumerzen. Im Jahr 2009 oder 2010 soll die nächste Version freigegeben werden. Sie verspricht Verbesserungen in der Systemprogrammierung, beim Erstellen von Bibliotheken und in der gesamten Systematik, so dass C++ auch für Anfänger wesentlich leichter zu erlernen sein wird.
C++ für Windows
Kaum eine Programmiersprache passt zur anderen. Wenn Sie Teile eines Programms in C++ programmieren und Teile in Java, fangen normalerweise die Probleme schon an. Einen Ausweg aus dem Dilemma der fehlenden Kompatibilität bietet der Standard CIL (Common Language Infrastructure). Im .NET Framework von Microsoft Windows ist diese CIL integriert. Sie sorgt dafür, dass Sie Programmteile aus unterschiedlichen Sprachen zusammenfügen und sicher übersetzen lassen können. C++ ist nach der Standardisierung durch die ECMA voll kompatibel mit CIL. Das .NET Framework stellt darüber hinaus viele vorgefertigte Komponenten und Funktionen zur Verfügung, die jedem Programmierer die Arbeit in C++ erleichtern. Windows-Anwendungen können oft schon mit wenigen Mausklicks komfortabel programmiert werden.
Schon mit der Integrierten Entwicklungsumgebung Visual C++ 2005 Express Edition legt Microsoft allen Entwicklern das Instrument in den Rechner, das sowohl ISO C++ als auch C++/CLI und das .NET Framework unterstützt.
C++ lernen lohnt sich – Gratis-Infos hier!
