Visual Basic.NET - Detener programa

   
Vista:

Detener programa

Publicado por Manuel (1 intervención) el 01/04/2010 07:15:31
Saludos!!!
Tengo un programa que analisa sintacticamente un codigo....Esta compuesto de llamar funciones unas a otras (lo siento esta en c#, pero la logica es la misma y veo que aqui contestan mas que en el otro foro :)

void Inicio()
{
Funcion1();
}


void Funcion1()
{
if (Token == X)
Funcion1();
else
Funcion2();
}

void Funcion2()
{
Funcion3();
Funcion4();
}

void Funcion3()
{
if (Token == X)
Funcion1();
else
Error();
}

.......etc etc

Son como 100 funciones, el problema es que al hacer las llamadas a la funcion Error necesito que el programa se detenga, no que se cierre ya que ocupo ver los rsultados, si pongo return o break en la funcion Error solo se sale de esa funcion, pero todas la demas siguen....como le hago que al ecnontrar el primer error el programa se detenga....??
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Detener programa

Publicado por Miguel (4 intervenciones) el 08/04/2010 11:36:33
La llamada a la función Error() sólo la debes de hacer una vez en la funcion Inicio() si Funcion1() devuelve código de error.
Para esto, todas las funciones deben devolver un código de error o de ejecución correcta, así, si una devuelve error te podrás ir saliendo de todas las llamadas anidadas.

Ej:

void Inicio()
{
Funcion1();
If Error Then Error();
}

void Funcion1()
{
if (Token == X)
Funcion1();
If Error Then
Devolver Error
Salir de la función
End IF
else
Funcion2();
If Error Then
Devolver Error
Salir de la función
End IF
}

void Funcion2()
{
Funcion3();
If Error Then
Devolver Error
Salir de la función
End IF
Funcion4();
If Error Then
Devolver Error
Salir de la función
End IF
}

void Funcion3()
{
if (Token == X)
Funcion1();
If Error Then
Devolver Error
Salir de la función
End IF
else
If Error Then
Devolver Error
Salir de la función
End IF

}

Siento si no está bien escrito, pero no conozco bien la sintaxis de C.

Saludos,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar