Expressões de constante de C++
C++ requer expressões constantes — expressões que são avaliados como uma constante — para declarações de:
Limites de matriz
Seletores de instruções case
Especificação de comprimento de campo de bit
Inicializadores de enumeração
Os operandos únicos que são válidos em expressões constantes são:
Literais
Constantes de enumeração
Valores declarados como const que são inicializados com expressões constantes
expressões de sizeof
Constantes nonintegral devem ser convertidos (explícita ou implicitamente) para tipos integrais para serem Ofício em uma expressão constante.Portanto, o código a seguir é legal:
const double Size = 11.0;
char chArray[(int)Size];
Conversões explícitas para tipos integrais são legais em expressões de constantes; todos os tipos e tipos derivados são ilegais, exceto quando usado como operandos do operador sizeof.
O operador vírgula e operadores de atribuição não podem ser usados em expressões de constantes.