标签: swift operator-overloading try-catch
我正在实现一个支持算术运算符重载的Swift 3类。如果除数为零,我希望除法(/)操作抛出错误。如果发生溢出,也乘以(*)抛出。
这要求我使用我的内联算法尝试。
var x = try a / b
没关系,只有在计算使用我的类的对象时才需要尝试。这是一种笨拙,不一致的编码。
另一种方法是在每次计算之外构建完整性检查,这是重复的,容易受到编码错误/遗漏的影响。
Swift在运算符重载表达式中尝试/抛出/捕获错误有什么好/更好/最佳做法?