Dieser Artikel von Wikipedia ist u.U. veraltet. Die neue Version gibt es hier. C++ ist eine Programmiersprache für allgemeine Anwendungen und basiert auf Programmiersprache C wie in ISO /IEC 9899:1990 beschrieben.
C++ wurde von Bjarne Stroustrup seit 1979 entwickelt erste Anwendungen außerhalb der Forschung datieren vom Juli 1983 erste kommerzielle Systeme von 1985 . Von einem einfachen " C mit Klassen " für das Simula-67 das primäre Vorbild war entwickelte sich Sprache von da an über mehrere Zwischenstufen heutigen als weitgehend ausgereift geltenden Stand.
C++ ist seit 1998 von der ISO (ISO-14882) genormt. Die nächste ISO-C++-Norm wird noch in dieser Dekade herausgegeben werden (C++0x).
Der folgende Quelltext stellt ein einfaches C++- Programm dar das eine Meldung auf dem ausgibt.
#include <iostream>
int main() { std::cout << "Hallo << std::endl; return 0; // Rückgabewert ist }
Die C++-ISO-Norm schreibt vor dass das von main vom Typ int sein muss. Ein bei dem das Ergebnis von main nicht vom Typ int ist ist gültiges Programm im Sinne der C++-ISO-Norm (ISO-14882).
Der Wert hinter dem Wort return gibt Informationen an den Aufrufer in Fall den Aufrufer des gesamten Programms zurück. Wert 0 bedeutet per Konvention dass der problemlos erfolgt ist. Wird der Rückgabewert bei Funktion main nicht angegeben dann ist dies gleichbedeutend dass 0 zurückgegeben wird. Das folgende Programm also exakt das gleiche wie das obige:
#include <iostream>
int main() { std::cout << "Hallo << std::endl; }
Auch hier erhält der Aufrufer des als Ergebnis den Wert 0.
C++ ist eine Erweiterung der Programmiersprache C gemäß dem Stand von 1990 ( ISO/IEC 9899:1990 auch kurz C90 genannt). Es gab auch Rückwirkungen von C++ auf C beispielsweise C die Funktionsprototypen von C++ übernommen.
Einige wenige C-Programme gemäß C90 lassen sich nicht ohne Weiteres als kompilieren bzw. haben als C++-Programme eine etwas Bedeutung. Dabei handelt es sich aber um die in der Praxis keine große Rolle
Die letzten Änderungen an C fanden 1999 statt. Gemäß dem Ratifizierungsjahr 1999 spricht man wenn man sich auf C-Stand bezieht deshalb auch von C99. Ein für darin eingeführte Spracherweiterungen sind die sogenannten
Einen anderen Weg als C++ gehen wie Java und C# die zu Gunsten eines konsistenteren Designs Pfad der Kompatibilität zu C und C++ haben. Dabei diente Java und C# die Syntax nicht jedoch die Semantik von C++ als Vorbild .
Einen alternativen Ansatz die objektorientierte Programmierung C zu integrieren stellt Objective-C dar das Smalltalks Klassen- und Objektbegriff auffasst und weiterentwickelt.
Bjarne Stroustrup: Die C++ Programmiersprache Addison-Wesley ISBN 3-8273-1660-X das Standardwerk zu C++ Grundkenntnisse zu C Vorteil; sehr empfehlenswert
Andrew Koenig / Barbara E. Moo: Intensivkurs C++ Pearson Studium ISBN 3-8273-7029-9 hervorragendes Anfängerbuch ein gewisses Grundverständnis zu von Vorteil; sehr empfehlenswert
Scott Meyers: Effektiv C++ programmieren - 50 Wege zur ihrer Programme und Entwürfe Addison-Wesley ISBN 3-8273-1305-8 zur Vertiefung bereits vorhandener C++-Kenntnisse; sehr
Scott Meyers: Mehr Effektiv C++ programmieren - 35 neue zur Verbesserung ihrer Programme und Entwürfe Addison-Wesley ISBN 3-8273-1275-2 Vertiefung vorhandener C++-Kenntnisse; sehr empfehlenswert
Herb Sutter: Exceptional C++ ISBN 3-8273-1711-8 (deutsch) Vertiefung vorhandener C++-Kenntnisse; sehr empfehlenswert
Andrei Alexandrescu: Modernes C++ Design mitp ISBN 3-8266-1347-3 das Standardwerk zur C++-Metaprogrammierung setzt ein tiefes von C++ voraus; sehr empfehlenswert
Nicolai M. Josuttis: Objektorientiertes Programmieren in C++ Addison-Wesley ISBN 3-8273-1771-1