Я видел этот код расчета финансов на моем другом компьютере:
double Total = ...
double Paid = ...
double Wating_For_Details = ...
double Decuctibles = ...
double Rejected = ...
Хорошо, как только я это увидел, я сказал ему, что double
представлен в base 2
и НЕ может представлять финансовый расчет. вместо этого используйте decimal
.
большой.
Но в тот момент, когда я меняю его на двойной Ive столкнулся:
Attempted to divide by zero.
HUH?
По-видимому - используя double
, при делении на 0.0
он выполняет НЕ исключение:
Но возвращает NAN
.
В то время как мой код (используя decimal
) делает исключение (когда Total
есть zero
)
И поэтому я спрашиваю:
Я проверил 0.0==0
и вернул true. так почему я не получаю исключение, кроме NAN
? Я знаю, что это должно быть, но где распространено исключение исключения метаданных при делении double на ноль?