
error c++ crosses initialization of
17/12/2010Al producirse el siguiente error de compilación en c++:
error: crosses initialization of
frecuentamente producido en una sentencia «switch case», es solucionable mediante la inclusión entre llaves ( {} ) del bloque de código.
swtich (opcion)
case 1: {
cout << "hola" << endl;
break;
}
muchas gracias primera pagina que visito y me dan la solucion de una, muchas gracias
Perfecto pero porque ocurre?
Normalmente ocurre cuando se declaran variables u objetos dentro de un case, al añadir los brackets se delimita el uso de esa variable al interior de ese case. De otro modo la variable seguiría activa al ejecutarse el break() y terminar el case que la contiene.
[…] pero no encontré el problema por lo que entendí que el asunto tenia que venir por otro lado. En este post explican que es lo que pasa. La idea es que si declaro algo dentro de un switch tengo que usar […]
Frankly I think that’s abultsleoy good stuff.