Note
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier les répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de changer de répertoire.
l'expression n'a pas été évaluée en tant que constante
Remarques
Expression déclarée comme const ou constexpr n’a pas évalué une constante au moment de la compilation. Le compilateur doit être en mesure de déterminer la valeur de l’expression au moment où elle est utilisée.
Exemple
Cet exemple montre comment provoquer une erreur C2131 et comment la corriger.
// c2131.cpp
// compile by using: cl /EHsc /W4 /c c2131.cpp
struct test
{
static const int array_size; // To fix, init array_size here.
int size_array[array_size]; // C2131
};
const int test::array_size = 42;
c2131.cpp
c2131.cpp(7): error C2131: expression did not evaluate to a constant
c2131.cpp(7): note: failure was caused by non-constant arguments or reference to a non-constant symbol
c2131.cpp(7): note: see usage of 'array_size'