Udostępnij za pomocą


Błąd kompilatora C2051

wyrażenie wielkości liter nie jest stałe

Uwagi

Wyrażenia wielkości liter muszą być stałymi liczbami całkowitymi.

Przykład

Poniższy przykład generuje kod C2051:

// C2051.cpp
class X {};

int main() {
   static X x;
   int i = 0;

   switch (i) {
      case x:   // C2051 use constant expression to resolve error
         break;
      default:
         break;
   }
}

Możliwe rozwiązanie:

// C2051b.cpp
class X {};

int main() {
   static X x;
   int i = 0;

   switch (i) {
      case 1:
         break;
      default:
         break;
   }
}