Есть ли в Objective-C десятичный объект с фиксированной точкой?

В других языках часто существует фиксированный десятичный объект, который можно использовать вместо IEEE float/double, чтобы гарантировать точность. Есть ли в Objective-C что-то подобное? Когда я искал, все, что я нашел, это NSNumber, который, кажется, имеет дело только со стандартными примитивными типами. Есть ли еще один объект, который мне не хватает?


person aperkins    schedule 26.05.2011    source источник


Ответы (1)


NSDecimalNumber возможно ?

Согласно этот пост существует Decimal тип, который не использует представление IEEE с плавающей запятой.

person Bala R    schedule 26.05.2011
comment
это кажется скорее реализацией стандарта IEEE в форме объекта - если я не упустил что-то очевидное? - person aperkins; 26.05.2011
comment
@aperkins На самом деле это обертка NSDecimal. Он поддерживает фиксированную точность до 38 десятичных цифр. См. эту страницу для получения дополнительной информации. на NSDecimalNumber и NSDecimal. - person ughoavgfhw; 26.05.2011
comment
@ughoavgfhw: Как он может поддерживать фиксированную точность до 38 цифр после точки счисления? Это либо ровно 38 цифр, либо число с плавающей запятой. - person Sedate Alien; 26.05.2011
comment
Как упомянул Седат, это была и моя мысль. - person aperkins; 26.05.2011
comment
Тем не менее, я только что снова перечитал тип Decimal - он кажется ближе к тому, что я ищу. Спасибо. - person aperkins; 27.05.2011