Возможный дубликат:
десятичное против двойного! - Какой из них использовать и когда?
Я использую тип double
для определения цены в моем торговом программном обеспечении. Заметил, что иногда возникают странные ошибки. Они возникают, если цена содержит 4 цифры после точки, например 2,1234.
Когда я отправил из своей программы «2,1234», в рыночном ордере появляется цена «2,1235».
Я не использую decimal
, потому что мне не нужна «экстремальная» точность. Мне не нужно, например, отличать «2,0000000000003» от «2,00000000002». Мне нужно максимум 6 цифр после точки.
Возникает вопрос - а где же линия? Когда использовать decimal
?
Стоит ли использовать decimal
для каких-либо финансовых операций? Даже если мне нужна всего одна цифра после точки? (1.1 1.2 и т. Д.)
Я знаю, что decimal
работает довольно медленно, поэтому я бы предпочел использовать double
, если только decimal
не требуется.