gpt4 book ai didi

iphone - 新手指南 : Managing currency in iPhone app

转载 作者:行者123 更新时间:2023-12-03 20:50:26 24 4
gpt4 key购买 nike

我正在构建一个需要管理资金数据类型的应用程序。

我是 Obj-c 的新手,所以我看不到 NSDecimalNumber 的用法。

例如,在我的单元测试中我这样做:

@interface SamplePerson : NSObject {
NSString *name;
NSDate *birthDate;
NSInteger size;
NSNumber *phone;
NSDecimal balance;
BOOL *isOk;
}

@property (nonatomic, retain) NSString *name;
@property (nonatomic, retain) NSDate *birthDate;
@property (nonatomic) NSInteger size;
@property (nonatomic, retain) NSNumber *phone;
@property (nonatomic) NSDecimal balance;
@property (nonatomic) BOOL *isOk;
--
o.balance = [NSDecimalNumber decimalNumberWithDecimal: [[NSNumber numberWithLong: 12.5] decimalValue]];

但是收到警告:

warning: passing argument 1 of 'save:' from distinct Objective-C type

总的来说,我发现这个问题比预期的更复杂。我可以使用整数进行破解,但在我 10 多年的 Foxpro、Delphi、.NET、Python 编码经验中,我从来没有这样做过……做这种工作从来没有遇到过问题。

无论如何,我想知道如何做到这一点。我阅读了网络,但只找到了与上面相同的代码和诸如“使用 NSDecimalNumber 或被杀!”之类的信息。

我想知道如何:

  • 评估简单值,例如 12.5
  • 简单的数学
  • 如何从 sqlite 存储和加载。

谢谢。

(顺便说一句:是否存在解决这个问题的库或实用程序?这听起来像是一个常见的头痛,对吧?)

最佳答案

您收到该警告的原因是因为您将余额声明为原始 NSDecimal,而不是 NSDecimalNumber *。看看this question至于为什么你应该使用 NSDecimalNumber。

关于iphone - 新手指南 : Managing currency in iPhone app,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/426779/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com