Error del compilador C2360
la inicialización de 'identificador' se omite en la etiqueta 'case'
La inicialización de identifier
se puede omitir en una instrucción switch
. No se puede saltar después de una declaración con un inicializador, a menos que la declaración esté incluida en un bloque. A menos que se declare dentro de un bloque, la variable está dentro del ámbito hasta el final de la instrucción switch
.
El ejemplo siguiente genera el error C2360:
// C2360.cpp
int main() {
int x = 0;
switch ( x ) {
case 0 :
int i = 1;
{ int j = 1; }
case 1 : // C2360
int k = 1;
}
}
Posible solución:
// C2360b.cpp
int main() {
int x = 0;
switch ( x ) {
case 0 :
{ int j = 1; int i = 1;}
case 1 :
int k = 1;
}
}