C++ für einsteiger - ein Basis-Tutorial www.mbergmann-sh.de

C++ Tutorial – Anhang: Schlüsselwörter in C/C++

Ein Schlüsselwort ist in Programmiersprachen ein Wort, das durch die Definition dieser Programmiersprache eine bestimmte Bedeutung hat und nicht als Name von Variablen oder Funktionen verwendet werden darf.

  • asm
    C++ bietet die Möglichkeit, Assembler-Anweisungen direkt in den C++-Quellcode einzubauen. Wie dies passiert, ist compilerabhängig.

Die vom ISO-Standard vorgesehene Methode ist

asm("assembler code");

Diese Schreibweise wird jedoch nicht von allen Compilern unterstützt.

Bei vielen Compilern werden Assembler-Anweisungen stattdessen in asm-Blöcke geschrieben:

//C++-Code
asm {
   //Assembler-Code
}
//weiterer C++-Code
  •  auto 
    In C++-Programmen gibt es verschiedene Arten von Speicher zu verwalten:

    • auf dem Stack
    • auf dem Heap
    • vom Compiler im Programm „verbaut“

    Wenn hier und im Folgenden vom Compiler die Rede ist, soll alles vom Präprozessor bis zum Linker gemeint sein. Das ist zwar sachlich falsch, sei aber als Vereinfachung an dieser Stelle erlaubt.
    Der einfachste und für den Programmierer „pflegeleichte“ Speicher ist der auf dem Stack (Stapel). Du musst ihn weder explizit anfordern noch freigeben, beides geschieht automatisch. (Dafür gibt es das Schlüsselwort auto, das genau diese Sorte von Variablen markiert. Weil das aber den „Normalfall“ darstellt, ist auto redundant und wird faktisch nie verwendet.)

  • bool
    Variable für Wahrheitswert
  • break
    Teil einer bedingten Anweisung, dient dem Verlassen einer bestimmten Bedingung.
  • case
    Teil einer bedingten Anweisung, prüft eine Bedingung.
  • catch
    Teil einer Fehlerbehandlungsroutine, fängt potentiell gefährliche Anweisungen ab.
  • char
    Datentyp
  • class
    Teil einer Klassendefinition
  • const
    kennzeichnet eine Konstante
  • const_cast
    Typumwandlung
    Merke: Verändert nichts, erlaubt dem Compiler aber eine Adresse, an der konstante Daten stehen, immer zu verwenden, wenn die Daten nicht geändert werden. Das heißt also auch, wenn eigentlich konstante Daten ausgeschlossen wurden.const_cast<Typ>(ausdruck) bewirkt dasselbe wie (Typ)ausdruck, sofern sich der angegebene Typ und der Typ von ausdruck höchstens um ein const unterscheiden. Achtung: Wenn Sie auf diese Art das const-Attribut „wegzaubern“, heißt das noch lange nicht, dass die Variable dann „unfallfrei“ verändert werden kann. Der Compiler könnte z. B. alle const-Objekte in einem speziellen Read-Only-Speicherbereich anlegen, wo Schreibzugriffe grundsätzlich verboten sind. Solche Casts dienen ausschließlich dazu, konstante Referenzen oder Zeiger auf konstante Daten an Funktionen zu übergeben, welche eigentlich das gleiche in der nichtkonstanten Variante erwarten. Bitte beachten Sie, dass so etwas nur gemacht werden darf, wenn Sie wissen, dass innerhalb der Funktion nichts an den Daten geändert wird, wenn doch, ist das Programm fehlerhaft und sein Verhalten undefiniert.
  • continue
    Teil einer Kontrollstruktur, setzt das Programm z. B. bei einer nicht erfüllten Bedingung fort.
  • default
    Teil einer bedingten Anweisung, regelt das Standardverhalten einer Bedingungsabfrage
  • delete
    delete ist ein Operator, der verwendet wird, um Array- und Nicht-Array(-Zeiger)-Objekte zu zerstören, die durch den new-Operator dynamisch erstellt wurden.delete kann entweder mit dem Operator delete oder mit dem Operator delete [ ] verwendet werden.
    Der new-Operator wird für die dynamische Speicherzuweisung verwendet, bei der Variablen im Heap-Speicher abgelegt werden.
    Das bedeutet, dass der delete-Operator Speicher aus dem Heap deallokiert.
    Der Zeiger auf das Objekt wird nicht zerstört, sondern der Wert oder der Speicherblock, auf den der Zeiger zeigt, wird zerstört.
    Der delete-Operator hat den Rückgabetyp void, was bedeutet, dass er keinen Wert zurückgibt.
  • do
    Teil der do – while Schleife (Kontrollstruktur)
  • double
    Datentyp
  • dynamic_cast
    Typumwandlung
  • else
    Teil einer if – else – Schleife (Kontrollstruktur)
  • enum
    Aufzählung

    enum Wochentage
     {
       Montag,     // 0
       Dienstag,   // 1
       Mittwoch,   // 2
       Donnerstag, // 3
       Freitag,    // 4
       Samstag,    // 5
       Sonntag     // 6
     };
  • explicit
  • extern
    stellt eine Variable oder Funktion anwendungsweit zur Verfügung
  • export
    Erlaubt es, die Definition eines Templates in einer eigenen Datei zu machen (so dass im Header, der von Ihnen inkludiert wird, nur die Deklaration steht), wird allerdings bisher nur vom Comeau C++ Compiler vollständig unterstützt.
  • false
    Wahrheitswert
  • float
    Datentyp
  • for
    Teil einer Kontrollstruktur (for-Schleife)
  • friend
    Strukturierung, regelt das Verhältnis zweier Klassen zueinander
  • goto
    Sprunganweisung, Kontrollstruktur
  • if
    if – else – Abfrage, Bedingungen, Kontrollstruktur
  • int
    Datentyp
  • long
    Datentyp
  • mutable
    ist eine Membervariable mutable, so kann sie auch geändert werden, wenn das Objekt konstant ist
  • namespace
    Namensraum
  • new
    Arbeitsspeicher allozieren
  • noexept
    seit C++ 11
  • nullptr
    seit C++ 11
  • operator
    Überladung von Operatoren
  • private
    Speicherklasse
  • protected
    Speicherklasse
  • public
    Speicherklasse
  • register
    Speicherklasse
  • reinterpret_cast
    implizite Typumwandlung
  • return
    Rückgabe eines Wertes aus einer Funktion heraus
  • short
    Datentyp
  • signed
    Qualifier für einen Datentyp (mit Vorzeichen)
  • sizeof
    Operator zur Anzeige des Speicherbedarfs eines Datentyps oder einer Variablen, ermittelt den Speicherbedarf eines Typs oder eines Ausdrucks.
  • static
    statische Elemente in Klassen
  • static_cast
    static_cast<Typ>(ausdruck) bewirkt dasselbe wie (Typ)ausdruck, sofern eine implizite Umwandlung existiert. Anderenfalls akzeptiert es der Compiler nicht. Merke: Verändert die Daten selbst.
  • struct
    Zusammengesetzter Datentyp, Struktur. Eine Struktur (struct(ure)) ist ein Datentyp, der mehrere Variablen gleichen oder verschiedenen Typs zu einem neuen Datentyp zusammenfasst. Die Deklaration erfolgt mit dem Schlüsselwort struct
  • switch
    unterscheidende Kontrollstruktur, Verzweigung
  • template
    Mit Templates (Schablonen) können allgemeine Funktionen und Klassen erstellt werden. Sie dienen zur Erzeugung von wiederverwendbarem Code. Templates werden zur Compilezeit abgearbeitet. Unterschieden wird zwischen Funktions- und Klassentemplates.
  • this
    Zeiger auf das aktuelle Objekt
  • throw
    Teil einer Exception-Fehlerbehandlungsroutine, wirft einen bestimmten Fehler oder eine Meldung aus
  • true
    Wahrheitswert
  • try
    Teil einer Exception-Fehlerbehandlungsroutine, prüft Bedingungen zur Laufzeit
  • typedef
    Mit einer typedef-Deklaration gibst du einem (primitiven oder zusammengesetzten) Datentyp einen Aliasnamen.
  • typeid
    Liefert ein Objekt von Typ type_info zurück (Header: <typeinfo>)

 


[Inhaltsverzeichnis]