Swift重载NSDecimalNumber运算符

时间:2016-12-02 20:10:18

标签: ios swift xcode

我想知道是否有一个原因Swift不会仅为NSDecimalNumber重载标准算术(+, - ,*,<,>等)运算符,而是选择传统方法名称为addingsubtracting等。

我想超载这些操作符,这是一个好主意,有什么潜在的缺点?

修改

显然,Swift 3添加了Decimal类型。 Swift 3也在一堆其他类型的前面放弃了NS,所以我假设Decimal只是一个NSDecimal而NS掉线了,但事实并非如此!虽然它没有真正回答这个问题,但我认为使用Decimal代替NSDecimalNumber通常应该是Swift 3及更高版本的良好反应。您可能希望坚持使用NSDecimalNumber的一个原因是,如果您有许多扩展,并且不想在每次要使用扩展方法时进行桥接。

1 个答案:

答案 0 :(得分:1)

您是否要使用Decimal代替NSDecimalNumber

let d1 = Decimal(integerLiteral: 10)
let d2 = Decimal(integerLiteral: 2)
let result = d1 * d2 // 20