Freigeben über


Compilerfehler C2360

Die Initialisierung von „identifier“ wird von der Bezeichnung „case“ übersprungen.

Bemerkungen

Die Initialisierung kann identifier in einer switch Anweisung übersprungen werden. Sie können nicht über eine Deklaration mit einem Initialisierer springen, es sei denn, die Deklaration ist in einen Block eingeschlossen. (Sofern sie nicht innerhalb eines Blocks deklariert wird, befindet sich die Variable bis zum Ende der switch Anweisung im Gültigkeitsbereich.)

Example

Im folgenden Beispiel wird C2360 generiert:

// C2360.cpp
int main() {
   int x = 0;
   switch ( x ) {
   case 0 :
      int i = 1;
      { int j = 1; }
   case 1 :   // C2360
      int k = 1;
   }
}

Mögliche Lösung:

// C2360b.cpp
int main() {
   int x = 0;
   switch ( x ) {
   case 0 :
      { int j = 1; int i = 1;}
   case 1 :
      int k = 1;
   }
}