Výrazy konstant v jazyce C++
Jazyk C++ vyžaduje výrazy konstanty - výrazy, které jsou vyhodnoceny jako konstanta - pro deklarace:
Indexy pole
Selektory v příkazech case
Určení délky bitového pole
Inicializátory výčtu
Jediné operandy, které jsou platné ve výrazech konstanty jsou:
Literály
Konstanty výčtu:
Hodnoty deklarované jako const jsou inicializovány výrazy konstanty
výrazy sizeof
Aby byly neintegrální konstanty platnými výrazy konstanty, musí být převedeny (explicitně nebo implicitně) na integrální typy.Proto je následující kód platný:
const double Size = 11.0;
char chArray[(int)Size];
Explicitní převody na integrální typy jsou platné ve výrazech konstanty. Všechny ostatní a odvozené typy jsou neplatné s výjimkou, kdy jsou použity jako operandy operátoru sizeof.
Operátor čárka a operátory přiřazení nelze použít u výrazů konstanty.