C++
|
Übersicht
|
Einführung |
Mehr... |
Links |
RFCs |
Books
|
PROGRAMMIERUNG |
Was ist C++?
Was kann C++?
Neuerungen von C++ gegenüber C
Sicherheitsrisiko C++?
Beispiel - Dies ist ein Test
Credits
|
Was ist C++?
|
Wie alle Programmier-Hochsprachen erhebt auch C++ den Anspruch, Probleme jeglicher Art lösen zu können.
C++ findet seinen Einsatz in der Entwicklung grosser und anspruchsvoller Anwendungen
sowie in der Systemprogrammierung. Dies reicht von Betriebssystemen, virtuellen Maschinen
bis hin zu Treiber und Signalprozessoren. Da die Entwicklung solch anspruchsvoller
Anwendungen in Sprachen wie Assembler nur mit grossem Aufwand zu bewältigen ist,
läuft C++ diesen den Rang ab und ersetzt nach und nach Anwendungen, die bislang jahrelang
nur in reinem C umgesetzt wurden.
|
Was kann C++?
|
Als Erweiterung von C bietet C++ die Möglichkeit, objektorientiert zu programmieren. Dies ist aber nicht
fest vorgeschrieben. So kann auch unter anderen auch weiterhin in alter C Manier strukturiert und prozedural
programmiert werden.
C++ ist eine Erweiterung zu der
Programmiersprache C und ergänzt diese um viele nützliche Elemente,
die nicht nur die Objektorientierung betreffen. Viele C Programme lassen sich ohne grössere Anpassungen in
C++ übertragen.
Das Vokabelheft von C++ umfasst 72 Wörter.
|
and |
and_eq |
asm |
auto |
bitand |
bitor |
bool |
break |
case |
catch |
char |
class |
compl |
const |
const_cast |
continue |
default |
delete |
do |
double |
dynamic_cast |
else |
enum |
extern |
explicit |
false |
float |
for |
friend |
goto |
if |
inline |
int |
long |
mutable |
namespace |
new |
not |
not_eq |
operator |
or |
or_eq |
private |
protected |
public |
register |
reinterpret_cast |
return |
short |
signed |
sizeof |
static |
static_cast |
struct |
switch |
template |
this |
throw |
true |
try |
typedef |
typename |
typeid |
unsigned |
union |
using |
virual |
void |
volatile |
while |
xor |
xor_eq |
|
Diese Bezeichner sind reserviert und dürften nicht für
Variablen, Funktionsnahmen oder Klassen verwendet werden.
|
Neuerungen von C++ gegenüber C
|
C ist zwar in C++ komplett enthalten, sie besitzt jedoch auch eine ganze Reihe von Neuerungen:
- Referenzen, Inline-Funktionen, strenge Typprüfung
- neue dynamische Speicherverwaltung mit new und delete
- Einführung von Klassen, einfach und mehrfach Vererbung
- Stream-Ein-/Ausgabe
- Erweitere Standard Bibliothek
- Einsatz von Templates (Schablonen) für generische Programmierung
- neue Variante für Kommentare: Zeilenkommentare
- Deklarationen und Definitionen können überall, nicht nur am Anfang eines Blocks stehen
- Funktionen können Default Parameter haben
- Funktionen und Operatoren können überladen werden
|
Sicherheitsrisiko C++?
|
Auch in C++ besteht weiterhin die Gefahr einen Pufferüberlauf zu erzeugen. Zwar gibt es gewisse
Möglichkeiten zur automatisieren Prüfung von Feldgrenzen, doch sind diese Möglichkeiten in der Praxis
nur beschränkt einsetzbar. C++ Programme können also unter Umständen anfällig für Pufferüberläufe sein
und damit das Risiko berherbergen, so eingeschleusten Schadcode zur Ausführung zu bringen.
|
Beispiel: Test-Routine in C++
|
#include <iostream>
using namespace std;
main(void)
{
cout << "Dies ist ein Test.\n";
}
|
1 Einbinden der Headerdatei für Ein-und Ausgaben
2 Namespace für Ein- und Ausgaben
3 Hauptfunktion
4 Anfang einer Anweisung
5 Ausgabebefehl
6 Ende der Anweisung
|
Ausgabe des Textes: Dies ist ein Test
|
|
Bericht von : [ CONVEX ]
|
Überarbeitet von : -
|
|