Possible en double:
C++ - Arguments for Exceptions over Return Codesce qui est mieux, jeter une exception ou retourner la valeur non nulle?
Pendant que vous faites la programmation C++, vous avez deux choix de signaler une erreur. Je suppose que beaucoup d'enseignants vous suggéreraient de lancer une exception, qui dérive de std :: exception. Une autre façon, qui pourrait être plus "C", est de retourner une valeur non nulle, car zéro est "ERROR_SUCCESS".
Définitivement, le retour d'une exception peut fournir des informations beaucoup plus de l'erreur et de récupération; alors que le code va un peu gonfler, et faire exception à la sécurité dans votre esprit est un peu difficile pour moi, au moins. Une autre façon de retourner quelque chose d'autre, rendra la déclaration d'une erreur beaucoup plus facile; le défaut est que la gestion de la récupération sera un problème potentiellement important.
Alors, en tant que bons programmeurs, quelle serait votre préférence, sans tenir compte de l'opinion de votre patron? Pour moi, je voudrais retourner des valeurs non nulles.
Exceptions gonflent le code? Je pense que la vérification d'une valeur de retour différente de zéro après chaque appel de fonction est beaucoup plus de bruit qu'un essai à un endroit stratégique. – sth
Voir http://stackoverflow.com/questions/1849490/c-arguments-for-exceptions-over-return-codes, http://stackoverflow.com/questions/99683/which-and-why-do-you- prefer-exceptions-or-return-codes, etc. –
oui, les exceptions gonflent le code. Au moins, pensez donc que les gens de Google http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml?showone=Exceptions#Exceptions vont à la section des exceptions – Tebe