作者热门文章
- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
在 swift 中,一个函数可以有一个带有默认值的可选参数,例如:
func f(a:Int, b:Int?=nil) {}
f(1);
f(1,2);
我想用枚举的关联值来做到这一点。关注这篇关于 type safe url routes 的帖子,我想要一个可以接受可选参数的路由,例如:
enum StopPoint {
case Search(query:String, limit:Int?=nil)
}
但是它说我不能为元组中的参数设置默认值。然而,有可能出现诸如 case Arrivals(stopId:Int)
之类的情况,但一般情况下不可能有一个带有一个命名参数的元组。
那么有没有可能有一个带有默认参数的枚举,关联的值是否是一个元组?
最佳答案
你可以做的是:
enum StopPoint {
case Search(query: String, limit: Int?)
init(query: String, limit: Int? = nil) {
self = .Search(query: query, limit: limit)
}
}
let foo = StopPoint(query: "default") // Search("default", nil)
let bar = StopPoint(query: "special", limit: 42) // Search("special", Optional(42))
关于swift - swift 枚举大小写中的可选参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34456531/
我正在尝试用 Swift 编写这段 JavaScript 代码:k_combinations 到目前为止,我在 Swift 中有这个: import Foundation import Cocoa e
我是一名优秀的程序员,十分优秀!