Bonjour, quelqu'un peut -ilm'expliquer clairement � quoi dert une exception? Je ne vois pas pourquoi un simple if ne ferait pas l'affaire.
J'ai d�ja regarder de la doc dessus mais je ne vois pas la diff�rence
Merci.
Bonjour, quelqu'un peut -ilm'expliquer clairement � quoi dert une exception? Je ne vois pas pourquoi un simple if ne ferait pas l'affaire.
J'ai d�ja regarder de la doc dessus mais je ne vois pas la diff�rence
Merci.
Les exceptions sont utilis�es pour capturer une eventuelle erreur lors de l'execution de ton programme, comme cela, si tu as r�cup�r� une exception, tu peut afficher ton propre message d'erreur au lieu de message d'erreur windows auquel on ne comprand pas toujours tout, ou tu peut aussi lors d'une erreur executer un code sp�cial pour contrecarer l'erreur, etc...
ici, je dois mettre une exception?
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11 void __fastcall TForm2::RetirerClick(TObject *Sender) { if(StringGrid1->RowCount==2) ShowMessage("Attention, vous ne pouvez pas supprimer cette ligne"); else { StringGrid1->RowCount--; StringGrid1->Height=(StringGrid1->Height-25); } }
Ici, si j'ai bien compris, tu veut que l'on ne puisse pas retirer de ligne si il n'y en a que deux, c'est donc une condition et non pas une exception, puisque c'est toi qui veut faire la condition, enfin si j'ai bien compris ce que tu voulais, si tu veut mettre une capture d'exception � cette endroit, tu peut mais personnellement je n'en voit pas l'int�r�t.Envoy� par sandball22
cherche dans les blocs de code
tu peux ainsi avoir par exemple :
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9 try { } catch(...) { }
ainsi, dans ce code, ton si va s'executer mais je gerera pas une eventuelle erreur D'EXECUTION, ce sera donc le bloc catch qui va intercepter l'ereur (au lieu de laisser faire windows) et faire ce que tu veux en cas d'erreur.
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
12 try { if(condition) { //faire } } catch() { //faire si erreur }
est-je etais clair???
Quelques fautes de frappe qui viennent un peu obscurcir ton raisonnement mais sinon ca va.Envoy� par doudouallemand
![]()
non j'ai pas tre�s bien compris. tu peux r�expliquer?Merci. Dans le catch je met quoi? Sachatnque je ne sais pas si il y a une erreur quel genre d'errreur elle sera.
dans le catch, tu mets du code qui va faire quelque chose dans le cas d'une erreur (par exemple, un message a l'utilisateur).
pour savoir d'ou vient l'erreur, il me semble que tu peux faire :
tu confirme pottiez???
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9 try { //... } catch(Exception e) { //e contient l'erreur et tu peux faire e.c_str() }
C'est exacte � un petit d�tail pres mais qui a son importance :Envoy� par doudouallemand
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9 try { //... } catch(Exception &e) { //e contient l'erreur et tu peux faire e.c_str() }
J'ai contourn� mon probl�me en prenant
Code : S�lectionner tout - Visualiser dans une fen�tre � part int res = MessageBox(0,"Attention, vous ne pouvez pas supprimer cette ligne.\n", "Attention", MB_OK);
Et cela fonctionne. Merci pour votre aide.
Partager