Salut
comment gere des mauvais parametre pour un constructeur?
par exemple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 class test { public test(int i) { if (i == 0) // erreur } }![]()
Salut
comment gere des mauvais parametre pour un constructeur?
par exemple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 class test { public test(int i) { if (i == 0) // erreur } }![]()
Avec des try/catch ?
Qui ne tente rien n'a rien !
Ce qui ne nous tue pas nous rends plus fort !!
Mon projet ZELDA en C++/Allegro
http://www.tutoworld.com - Le Forum -
Mes ressources Dotnet (cours, sources, tutos)
--------------------------------------------
+
+
=
Ne pas oublier le Tag!
Rien ne t'empêche de lever une exception dans le constructeur. Maintenant certains n'aiment pas trop ce genre de choses, donc tu peux également passer par une méthode statique qui vérifie les paramètres avant d'instancier l'objet.
Au passage, puisque certains ne sont pas trop pour lever les exceptions dans un constructeur, on peut se poser les questions suivantes
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 public class Test { private int _i; private Test(int i) { _i = i; } public static Test CreateTest(int i) { if (i == 0) { throw new ArgumentException("La valeur du paramètre i doit être différente de zéro."); } else { return new Test(i); } } }
Peut-on lever une exception dans un constructeur ou est-ce déconseillé ?
Si ce n'est pas vraiment déconseillé, y'a t'il des cas bien précis ou il faut tout de même l'éviter ?
Quelqu'un à une expérience sur ce point ?![]()
Partager