Nous obtenons une erreur à la compilation lorsque l'entier est divisé par zéro, alors que dans le cas du double, il n'y a pas d'erreur à la compilation, mais à l'exécution, nous obtenons l'infini/NaN comme résultat. Avez-vous une idée de la raison pour laquelle int et double ont un comportement différent en ce qui concerne l'exception de division par zéro ?
void Main()
{
int number = 20;
var result1 = number/0; // Divide by zero compile time exception
double doubleNumber = 20;
var result2 = doubleNumber/0.0; // no compile time error. Result is infinity or NaN
}