Try {} catch {} ou bien if () en c#

Résolu/Fermé
Utilisateur anonyme - Modifié par Guillaume2020 le 31/12/2016 à 12:14
Whismeril Messages postés 19027 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 24 avril 2024 - 2 janv. 2017 à 15:37
Bonjour;
Je voudrais savoir s'il il est plus rapide pour un programme d'utiliser try ou plutôt de tester par conditions if si c'est possible? Ici, je veux tracer énormément de points sur une image, et je ne sais pas si je dois utiliser try pour éviter que mon programme tente de tracer à l'extérieur, ou bien juste vérifier les coordonnées.

Merci d'avance, a+

1 réponse

Whismeril Messages postés 19027 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 24 avril 2024 931
31 déc. 2016 à 12:21
Bonjour

une interception d'erreur est une opération longue, contrairement à un test simple
x<xmax && x > xmim && y < ymax && y > y min
j'ai utilisé && au lieu de & car avec && dès qu'une condition est fausse ça sort.

Par contre, rien ne t'empêche de mettre en plus un try catch qui va prévenir d'autres erreurs.
0
Merci pour ta réponse, a+
0
Whismeril Messages postés 19027 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 24 avril 2024 931
31 déc. 2016 à 12:58
de rien
0
Reivax962 Messages postés 3671 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
2 janv. 2017 à 15:32
Bonjour,

Je voudrais quand même nuancer.
Il me semble que le try-catch n'est coûteux que sur le catch -- lorsqu'une erreur est effectivement survenue. Alors que le test va, lui, s'exécuter à chaque itération, erreur ou non.

Du coup, il faut évaluer à quelle fréquence on s'attend à ce que le catch se déclenche. Si c'est souvent, il vaut mieux tester avec un "if" ; si c'est, au contraire, plutôt rare, le try-catch sera peut-être mieux.

J'ai envie de dire que le mieux serait encore de coder les deux, et de mesurer :)

Xavier
0
Whismeril Messages postés 19027 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 24 avril 2024 931
Modifié par Whismeril le 2/01/2017 à 15:37
Bonjour, c'est bien ce que j'ai dit
une interception d'erreur est une opération longue


et

rien ne t'empêche de mettre en plus un try catch qui va prévenir d'autres erreurs
0