是否可以在Swift中创建一个枚举类型的“关闭”?
发布时间:2020-12-14 05:36:42 所属栏目:百科 来源:网络整理
导读:当我尝试下面的代码,我得到一些错误. enum Operate: ((Double,Double) - Double) = { case Plus = {$1 + $0} case Minus = {$1 - $0} case Multiply = {$1 * $0} case Divide = {$1 / $0} } 是否可以在Swift中创建一个枚举类型的“关闭”? 谢谢. 正如@Pang
当我尝试下面的代码,我得到一些错误.
enum Operate: ((Double,Double) -> Double) = { case Plus = {$1 + $0} case Minus = {$1 - $0} case Multiply = {$1 * $0} case Divide = {$1 / $0} } 是否可以在Swift中创建一个枚举类型的“关闭”?
正如@Pang所说,只能使用字符串,字符或任何整数的浮点数类型作为原始类型.但是,您可以使用结构体来获得类似的东西:
struct Operate { typealias OperationType = (Double,Double) -> Double static let Plus : OperationType = { $0 + $1 } static let Minus: OperationType = { $0 - $1 } // ... } let plus = Operate.Plus plus(1.0,2.0) // 3.0 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |