Udostępnij za pośrednictwem


Błąd kompilatora C2362

Inicjowanie identyfikatora jest pomijane przez etykietę "goto"

Podczas kompilowania przy użyciu / Za skok do etykiety uniemożliwia zainicjowanie identyfikatora.

Możesz przeskoczyć deklarację tylko za pomocą inicjatora, jeśli deklaracja jest ujęta w blok, który nie został wprowadzony lub czy zmienna została już zainicjowana.

Poniższy przykład generuje C2362:

// C2362.cpp
// compile with: /Za
int main() {
   goto label1;
   int i = 1;      // C2362, initialization skipped
label1:;
}

Możliwe rozwiązanie:

// C2362b.cpp
// compile with: /Za
int main() {
   goto label1;
   {
      int j = 1;   // OK, this block is never entered
   }
label1:;
}