¿Cuál es la forma más correcta para volver de la función:regreso de una función void
void function() {
// blah some code
}
O
void function() {
// blah some code
return;
}
Justificación de la segunda manera:
- Expresa desarrollador intenciones más claramente.
- Ayuda a detectar finales función en tiempo de pre-compilación:
Suponga que tiene tal de escenarios tiene montón de funciones y se tiene que inyectar algo de código al final de esas funciones. Pero por alguna razón no desea/no puede modificar tal cantidad de funciones. Qué se puede hacer al respecto ? Return
& macro
entra en juego, por ejemplo:
#include<stdio.h>
#define MAX_LINES 1000
#define XCAT(a,b) a##b
#define CAT(a,b) XCAT(a,b)
#define return returns[__LINE__] = 1;\
if (returns[__LINE__])\
{printf("End of function on %d line.\n",__LINE__);}\
int CAT(tmp,__LINE__); \
if ((CAT(tmp,__LINE__)=returns[__LINE__], returns[__LINE__] = 0, CAT(tmp,__LINE__)))\
return
static int returns[MAX_LINES];
void function1(void) {
return;
}
void function2(void) {
return;
}
int main()
{
function1();
function2();
return 0;
}
Pregunta interesante, pero hemos votado para cerrar porque es demasiado subjetiva y es probable que cause algún conflicto. Posiblemente mejor para programmers.stackoverflow.com. Recuerde también leer las preguntas frecuentes. –
Es más una cuestión de estilo insertar palabras clave redundantes. – stacker
@stacker - lo que es redundante para una situación, no es para otra ... –