Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Ein konstanter Wert ist ein Wert, der sich nicht ändert. C++ bietet zwei Schlüsselwörter, mit denen Sie den Zweck eines Objekts angeben können, der nicht dazu gedacht ist, geändert zu werden, und diese Absicht erzwingen soll.
C++ erfordert konstante Ausdrücke – Ausdrücke, die als Konstante ausgewertet werden – für Deklarationen von:
Arraygrenzen
Selektoren in case-Anweisungen
Bitfeldlängenangabe
Enumerationsinitialisierer
Die einzigen Operanden, die in konstanten Ausdrücken zulässig sind, lauten:
Literale
Enumerationskonstanten
Werte, die als Konstanten deklariert sind und mit konstanten Ausdrücken initialisiert werden.
sizeof
-Ausdrücke
Konstanten, die keine Ganzzahlen sind, müssen (entweder explizit oder implizit) in ganzzahlige Typen konvertiert werden, um in einem konstanten Ausdruck zulässig zu sein. Daher ist der folgende Code gültig:
const double Size = 11.0;
char chArray[(int)Size];
Explizite Konvertierungen in integrale Typen sind in konstanten Ausdrücken legal; alle anderen Typen und abgeleiteten Typen sind unzulässig, außer wenn sie als Operanden für den sizeof
Operator verwendet werden.
Der Kommaoperator sowie Zuweisungsoperatoren können nicht in konstanten Ausdrücken verwendet werden.