Ver Mensaje Individual
  #7  
Antiguo 27-04-2006
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Reputación: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Me expresé muy mal. No pretendo decir que se use break como método regular para terminar un ciclo. Pero hay ocasiones en que las condiciones de salida de un ciclo pueden ser múltiples y no tan inmediatas de comprobar (que requieran llamadas a funciones por ejemplo) y ponerlas todas ellas como condiciones del ciclo puede ser muy engorroso.

Pienso también, sin embargo, que no es bueno ser tan dogmático. Un continue, por ejemplo, a fin de cuentas, también rompe una secuencia natural. Un switch con sus breaks no es sino una secuencia de

Código:
IF (TAL COSA)
{
  Codigo;

  GOTO FIN;
}

IF (TAL COSA)
{
  Codigo;

  GOTO FIN;
}

...

:FIN:
El dogmatismo nos llevaría a escribir

Código:
IF (TAL COSA)
{
  Codigo;
}
ELSE
{
  IF (TAL COSA)
  {
    Codigo;
  }
  ELSE
  {
    IF (TAL COSA)
    {
      Codigo;
    }
  }
}
Todos ellos, switch, break, continue, son usos escondidos del infame goto, que, no obstante, encuentran su justificación en algunas construcciones.

// Saludos
Responder Con Cita