Mögliche Deklarationen

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu Deklarationssyntax - Index

Folgende Objekte können deklariert werden:

  • Variablen
  • Funktionen
  • Klassen und Elemente von Klassen (C++)
  • Typen
  • Strukturen-, Varianten- und Aufzählungs-Tags
  • Elemente von Strukturen
  • Elemente von Varianten
  • Arrays anderer Typen
  • Aufzählungskonstanten
  • Anweisungs-Sprungmarken (Labels)
  • Präprozessor-Makros

Die vollständige Syntax für die Deklarationen wird unten gezeigt. Die rekursive Natur der Deklarationssyntax erlaubt sehr komplexe Deklaratoren. Sie sollten deshalb versuchen, durch Verwendung von typedefs die Lesbarkeit zu verbessern.

Beachten Sie in der Tabelle "C++Builder Deklarationssyntax" die Einschränkungen bezüglich Anzahl und Reihenfolge von Modifizierern und Qualifizierern. Die aufgeführten Modifizierer sind die einzige Erweiterung der von ANSI C oder C++ vorgegebenen Deklarationssyntax. Nähere Informationen hierzu erhalten Sie unter Modifizierer von Variablen und Funktions-Modifizierer.

C++Builder Deklarationssyntax

Deklaration:
    <Mehrere Deklarations-Spezifiz.> <Deklarator-Liste>;
    asm-Deklaration
    Funktions-Definition
    Bindungs-Spezifikation
asm-declaration: 
  __asm  <(> String-Literal <)> < ; oder neue-zeile >
Deklarations-Spezifizierer:
    Speicherklassen-Spezifizierer
    Typ-Bezeichner
    Funktions-Spezifizierer
    friend (C++ spezifisch)
    typedef
Mehrere Deklarations-Spezifizierer:
    <Mehrere Deklarat.-Spezifiz.> Deklarations-Spezifiz.
Speicherklassen-Bezeichner:
    auto
    register
    static
    extern
Funktions-Spezifizierer: (C++ spezifisch)
    inline
    virtual
Einfacher Typname:    
    Klassenname
    typedef-Name
    boolean
    char
    short
    int
    __int8
    __int16
    __int32
    __int64
    long
    signed
    unsigned
    float
    double
    void
Deklarator-Liste:
    Initialisierungs-Deklarator
    Deklarator-Liste , Initialisierungs-Deklarator
Initialisierungs-Deklarator:     
    Deklarator <Initialisierer>
Deklarator:
    dname
    Modifizierer-Liste
    Zeiger-Operator Deklarator
    Deklarator ( Parameter-Deklarationsliste )
    <cv-Qualifizierer-Liste >  (C++ spezifisch)
    Deklarator [ <Konstantenausdruck> ]
    ( Deklarator )
Modifizierer-Liste:     
    Modifizierer
    Modifizierer-Liste Modifizierer
Modifizierer:
    __cdecl
    __pascal
    __stdcall
    __fastcall
Zeiger-Operator:
    * <cv-Qualifizierer-Liste>
    & <cv-Qualifizierer-Liste>  (C++ spezifisch)
    Klassenname:: * <cv-Qualifizierer-Liste>  (C++ spezifisch)
cv-Qualifizierer-Liste:
    cv-Qualifizierer <cv-Qualifizierer-Liste>
cv-Qualifizierer:
    const
    volatile
dname:
    Name
    Klassenname (C++ spezifisch)
    ~ Klassenname (C++ spezifisch)
    typedef-Name
Erweiterter Typ-Bezeichner:
    Klassenschlüssel Bezeichner
    Klassenschlüssel Klassenname
    enum Aufzählungsname
class-key: (C++ spezifisch)
    class
    struct
    union
Aufzählungsspezifizierer:
    enum <Bezeichner> { < Aufzählungsliste > }
Aufzählungsliste:
    Aufzähler
    Aufzählungsliste, Aufzähler
Aufzähler:
    Bezeichner
    Bezeichner = Konstantenausdruck
Konstantenausdruck:
    Bedingter Ausdruck
Bindungs-Spezifikation: (C++ spezifisch)
    extern string { <Deklarationsliste> }
    extern string Deklaration
Typ-Bezeichner:
    Einfacher Typname
    Klassen-Bezeichner
    Aufzählungsbezeichner
    Erweiterter Typ-Bezeichner
    const
    volatile
Deklarationsliste:
    Deklaration
    Deklarationsliste ; Deklaration
Typname:
    Typ-Bezeichner <Abstrakt-Deklarator>
Abstrakt-Deklarator:
    Zeiger-Operator < Abstrakt-Deklarator >
    <Abstrakt-Deklarator> ( Argument-Deklarationsliste )
    <cv-Qualifizierer-Liste>
    <Abstrakt-Deklarator> [ <Konstantenausdruck> ]
    ( Abstrakt-Deklarator )
Argument-Deklarationsliste:
    <Arg-Deklarationsliste>
    Arg-Deklarationsliste , ...
    <Arg-Deklarationsliste> ... (C++ spezifisch)
Arg-Deklarationsliste:
    Argumentdeklaration
    Arg-Deklarationsliste , Argumentdeklaration
Argumentdeklaration:
    Mehrere-Deklarations-Spezifizierer Deklarator
    Mehrere-Deklarations-Spezifizierer Deklarator = Ausdruck  (C++ spezifisch)
    Mehrere-Deklarations-Spezifizierer <Abstrakt-Deklarator>
    Mehrere-Deklarations-Spezifizierer <Abstrakt-Deklarator> = Ausdruck   (C++ spezifisch)
Funktions-Definition:
    <Mehrere-Deklarations-Spezifizierer> Deklarator <Deklarationsliste> Funktionsrumpf
Funktionsrumpf:
    Blockanweisung
Initialisierer:
    = Ausdruck
    = { Initialisierer-Liste }
    ( Ausdrucksliste )  (C++ spezifisch)
Initialisierer-Liste:
    Ausdruck
    Initialisierer-Liste, Ausdruck
    { Initialisierer-Liste <,> }


Siehe auch