2011-06-10 20 views
16

Si tengo una función de la siguiente manera:Cómo salir de una función

void func() { 
    //... 

    if (condition) { 
     break; 
    } 
} 

Cuando uso romperla me da un error. ¿Hay alguna otra manera de salir de una función usando una condición if y completar la compilación del código normalmente?

+0

Esto se debe probablemente a la idea errónea de que si se denota como "si el rizo" por muchas personas. En realidad es "si condición". –

Respuesta

25

break se utiliza en loops e instrucción de conmutación. use return en su lugar.

+12

Tenga en cuenta que 'return' funciona incluso si la función tiene un tipo de retorno' void'. Usted simplemente escribe 'return;' en ese caso. –

2

En C++, puede return desde una función en cualquier momento que desee.

5

uso return;:

if(/*condition*/) { return; }

2

sólo tiene que utilizar return.

Más información se puede encontrar here.

0

break es salir de un bucle o una construcción switch.

En su lugar, use return con un valor opcional.

3

Intente utilizar 'return' en lugar de la pausa cuando tenga que ejecutar el código de reposo normalmente.

Uso 'break' en caso de interruptor o de bucle de ejecución normal

Uso 'salida' para la parada de la fuerza en la ejecución

0

Basta con establecer la variable de incremento en un número que hace que la loop para romper. Por ejemplo:

void calculate() { 
    for(i=0;i<10;i++) { 
     i=11; 
    } 
} 
+0

que no es exactamente la respuesta, Shadi preguntó cómo salir de la función, un retorno vacío haría el truco. – prmottajr

0

Simplemente utilice la instrucción return que no devuelve nada. Al igual que :

if(predicate) 
return; 
Cuestiones relacionadas