Если я делаю
double d = 0;
if (d == 0) {
...
}
Resharper жалуется на сравнение d == 0
"Сравнение числа с плавающей запятой с оператором равенства. Возможная потеря точности при округлении значений".
Почему? Не может быть сложно представить точный нуль в виде двойника или поплавка?
Я понимаю, что такое предупреждение было бы актуальным, если бы я сравнил какое-то другое значение, такое как 0.2, для которого нет точного двоичного представления.