Partager via


Dépannage des exceptions : System.OverflowException

Une exception OverflowException est levée lorsqu'une opération arithmétique, de casting ou de conversion engendre un dépassement de capacité dans un contexte vérifié (checked). Un dépassement de capacité se produit lorsqu'une opération engendre une valeur trop grande pour le type de destination, infinie ou non numérique (NaN).

Conseils associés

  • Lorsque vous effectuez un cast à partir d'un nombre, la valeur doit être un nombre valide inférieur à l'infini.
    Une valeur source ne peut pas être infinie ou non numérique.

  • Assurez-vous que vous ne divisez pas par zéro.
    La division par zéro génère habituellement cette exception.

Notes

Dans les langages qui détectent le dépassement de capacité, OverflowException est l'exception levée en cas de dépassement. Par exemple, en C#, le mot clé checked est utilisé pour détecter des conditions de dépassement de capacité. Une exception OverflowException se produit uniquement dans un contexte vérifié (checked).

Lorsque le résultat d'une opération arithmétique de type intégral ou décimal ou d'une opération de conversion se trouve en dehors de la plage autorisée pour le type de destination :

  • Dans un contexte vérifié (checked), une erreur de compilation se produit si l'opération est une expression constante. Sinon, une exception OverflowException est levée si l'opération est effectuée au moment de l'exécution.

  • Dans un contexte non vérifié (unchecked), le résultat est tronqué en supprimant tous les bits de poids fort qui ne tiennent pas dans le type destinataire.

Pour plus d'informations sur les plages de valeurs des types de données, consultez Liste des types de données (Visual Basic), Tableau des types intégraux (référence C#) ou Tableau des types virgule flottante (référence C#).

Voir aussi

Tâches

Comment : utiliser l'Assistant Exception

Référence

OverflowException