Je ne pas refuser, lol...
Ce qu'il aurait pu faire c'est créer des fonctions de gestions d'erreur au lieu de faire des goto ? l'alternative à goto c'est quoi si on veut executer le meme bloc de code en cas d'erreur :
Code C/C++ :
if( erreur )){
log(ERROR, "il y a erreur");
goto traiter_erreur;
}
...
traiter_erreur:
free(mem_allouee1);
free(mem_allouee2);
...
return -1;
Est ce que ceci une bonne manière :
if( erreur )){
log(ERROR, "il y a erreur");
return traiter_erreur(...);
}
int traiter_erreur( ...){
free(mem_allouee1);
free(mem_allouee2);
...
return -1;
}