У меня возникает странная проблема при разборе двойного значения в управляемом C ++. Может быть, я что-то делаю не так. Когда я делаю:
double value = 0.006;
result = Math::Parse( value)
Результатом будет 0.006000000000001
. Почему добавляется 1?
Также, когда я обхожу значение до 5 знаков после запятой, это терпит неудачу. Я делаю:
result2 = Math::Round(result, 5)
Но result2
всегда 0.006000000000001
. Что я делаю неправильно?