算术过载期间抛出错误

时间:2017-05-26 17:58:22

标签: swift operator-overloading try-catch

我正在实现一个支持算术运算符重载的Swift 3类。如果除数为零,我希望除法(/)操作抛出错误。如果发生溢出,也乘以(*)抛出。

这要求我使用我的内联算法尝试。

var x = try a / b

没关系,只有在计算使用我的类的对象时才需要尝试。这是一种笨拙,不一致的编码。

另一种方法是在每次计算之外构建完整性检查,这是重复的,容易受到编码错误/遗漏的影响。

Swift在运算符重载表达式中尝试/抛出/捕获错误有什么好/更好/最佳做法?

0 个答案:

没有答案