Als abgeleitete Klasse wird in C++ eine Klasse bezeichnet, die einen Teil ihrer Elemente (Datenelemente und Elementefunktionen) von einer anderen, bereits deklarierten Klasse übernimmt, d.h., sie erbt von
ihrer Basisklasse zuerst die Elemente, die sie noch durch eigene Elemente ergänzen kann. Geerbte
Elemente können auch durch eigene Elemente ersetzt werden. Eine abgeleitete Klasse
enthält im Regelfall mehr Elemente als ihre Basisklasse und ist daher ihr gegenüber
spezialisierter.
Durch die Ableitungsart wird festgelegt, mit welchen Zugriffsattributen die von einer Basisklasse geerbten Elemente übernommen werden. Dadurch wird geregelt, ob sonstige Funktionen oder Funktionen
weiterer abgeleiteter Klassen Zugriff zu ihnen haben.
In C++ sind drei Ableitungsarten definiert:
public:
Die Zugriffsattribute werden von der Basisklasse unverändert übernommen.
protected:
Der Zugriff auf öffentliche Elemente der Basisklasse wird auf weitere abgeleitete
Klassen eingeschränkt.
private:
Auf geerbte Elemente wird kein Zugriff gewährt.
Eine abstrakte Klasse ist eine Klasse mit wenigstens einer rein virtuellen Funktion, für die es in der Klassendeklaration keine Definition gibt. Daher ist die Deklaration der Klasse unvollständig, und
es dürfen von ihr keine Instanzen gebildet werden. Abstrakte Klassen können nur als Basisklassen benutzt werden. Eine abgeleitete Klasse kann wieder abstrakt sein, wenn sie
für eine rein virtuelle Funktion keine Definition enthält bzw. neue rein virtuelle
Funktionen hinzufügt.
Unter dem Alphabet versteht man die Menge aller Zeichen des Zeichensatzes, die zur Kodierung von C/C++-Programmen benutzt werden dürfen. Das Alphabet
der Programmiersprache C/C++ umfasst den vollständigen ASCII-Zeichensatz (96 Zeichen).
Unter einer Anweisung versteht man einen Satz in der Notation der Programmiersprache
C/C++, der mit einem Semikolon abgeschlossen ist. Eine Anweisung kann gegenüber
dem Compiler Objekte spezifizieren (Deklaration), den Compiler zur Speicherplatzreservierung für Datenobjekte veranlassen (Definition) oder vom Compiler in Maschinenbefehle des Prozessors (ausführbare Anweisungen)
übersetzt werden. Die Übersetzung der ausführbaren Anweisungen erfolgt in die
Objektform. Aus den Objektmoduln erstellt der Linker (externes Linken) ein ausführbares Programm. Exakt genommen, zählen zu den Anweisungen auch die
zeilengebundenen Anweisungen des Makropräprozessors. Diese werden aber in einem Vorpass vom Makropräprozessor bereits abgearbeitet
und dienen zur Generierung des C/C++-Programms, das dann vom Compiler übersetzt
wird. Deshalb werden diese Anweisungen in der Regel nicht in Betracht gezogen,
wenn man allgemein von Anweisungen spricht.
Eine Funktion definiert im Allgemeinen formale Parameter, die in der Funktion selbst als unabhängige
Variablen benutzt werden. Bei einem Funktionsaufruf werden die aktuellen Argumente
des Funktionsaufrufs zum Initialisieren der formalen Parameter benutzt (siehe
auch Parameterübergabe).
Amerikanischer Standardcode für die Informationsübertragung (American Standard Code for Information Interchange), der in seiner Grundform als 7-Bit-Code 96 Zeichen umfasst. In seiner Erweiterung
zum 8-Bit-Code enthält er im oberen Teil der Codetabelle (Codes 160 bis 255) nationale
bzw. multinationale Erweiterungen.
Aufzählungstypen werden durch eine explizite Aufzählung der Wertemenge vereinbart.
Den Aufzählungswerten werden standardmäßig die Integerzahlen ab null beginnend
zugewiesen. Mit Aufzählungsvariablen kann wie mit Integervariablen gearbeitet
werden.
Ausdrücke werden durch Anwendung von Operatoren auf Primärausdrücke als Operanden gebildet. Ein Primärausdruck ist im einfachsten
Fall eine Variable oder eine Konstante. Auch in runde Klammern eingeschlossene Ausdrücke werden als Primärausdruck
behandelt. Runde Klammern werden zur Änderung der Reihenfolge der Ausdrucksberechnung
benutzt. Sie setzen die natürlichen Prioritäten der Operatoren außer Kraft.
Unter einem Ausgabestrom versteht man den abstrakten Datenfluss von einem Programm
zu einem Ausgabegerät. C++ besitzt keine vordefinierten Sprachelemente für die
Ein- bzw. Ausgabe. Die Ausgabe wird über die Klasse ostream realisiert, die eine typsichere Konvertierung in eine ASCII-Zeichenkette durchführt.
Standardmäßig sind cout und cerr als Instanzen der Klasse ostream definiert. Sie sind dem Bildschirm als Standardausgabe bzw. Standardfehlerausgabe
zugewiesen. Die Klasse ostream ist in den Headerfiles <iostream> bzw. <ostream> definiert.
Ausnahmebehandlungen in C++ dienen einer problembezogenen Behandlung von Fehlern.
Vor allem bei großen Programmen, die Module und Bibliotheken verschiedener Programmierer
in sich vereinen, können Fehler global in einem Hauptprogramm behandelt werden,
ohne die einzelnen Module kennen zu müssen. Ein weiteres Problem ist, dass die
Entwickler von Bibliotheken das konkrete Programm nicht kennen und somit keine
adäquate Fehlerbehandlung programmieren können. Die Ausnahmebehandlung in C++
stellt also ein geeignetes Interface dar, über das ein Modul einem Anwendungsprogramm
einen Fehler signalisieren kann.
Unter einer Auswahl versteht man eine Sprachkonstruktion, die aus einer Menge
von sich gegenseitig ausschließenden (alternativen) Anweisungsfolgen eine Anweisungsfolge auswählt. Die Auswahl wird durch den Wert eines
zu berechnenden Ausdrucks festgelegt. In C/C++ wird die Auswahlanweisung durch die switch -Anweisung realisiert. Die auswählbaren Anweisungsfolgen werden durch case -Marken gekennzeichnet.
Die bedingte Anweisung führt im Unterschied zur Auswahlanweisung nur eine Anweisung in Abhängigkeit
von einer Bedingung aus bzw. kann aus zwei alternativen Anweisungen eine Anweisung
auswählen. Die abhängigen Anweisungen können auch Verbundanweisungen sein.