En la programación en C, donde tiene que limpiar manualmente, hay mucho que decir para el retorno de un punto. Incluso si ahora no hay necesidad de limpiar algo, alguien podría editar su función, asignar algo y necesitar limpiarlo antes de regresar. Si eso sucede, será un trabajo de pesadilla revisando todas las declaraciones de devolución.
En la programación en C ++ tienes destructores e incluso ahora guardias de salida de alcance. Todo esto debe estar aquí para garantizar que el código sea seguro ante excepciones en primer lugar, por lo que el código está bien protegido contra la salida anticipada y, por lo tanto, no tiene inconveniente lógico y es simplemente un problema de estilo.
No tengo suficiente conocimiento sobre Java, si "finalmente" se llamará el código de bloqueo y si los finalizadores pueden manejar la situación de la necesidad de garantizar que algo suceda.
C # Ciertamente no puedo responder.
El lenguaje D le brinda guardias de salida de alcance incorporadas adecuadas y, por lo tanto, está bien preparado para la salida anticipada y, por lo tanto, no debería presentar un problema que no sea el estilo.
Por supuesto, las funciones
no deberían ser tan largas en primer lugar, y si tiene una declaración de cambio enorme, es probable que su código también esté mal factorizado.