我只知道类型级方法,在类中我们应该使用 class ,在struct或enum中应该使用 static 。但是......让我们看看我的例子(My Xcode版本是6.3 beta 5),
class manager:NSObject{
var type:NSDictionary?
var array = NSMutableArray()
class func start(types:NSDictionary){
if array.count == 0 {...}
self.type = types
}
}
我会在类型级方法 start :
中遇到错误'start.Type' does not have a member named 'array'
和
'start.Type' does not have a member named 'type'
那么,正确的用法是什么?非常感谢!
答案 0 :(得分:0)
你想要达到什么目的?你的例子并不明显。
在任何情况下,类级函数的常见用法是单例的访问者(例如UIApplication中的sharedApplication
)
以下是如何实现此类方法的示例:
private var _sharedManager = Manager()
class Manager {
class func sharedManager() -> Manager {
return _sharedManager
}
}
请注意,由于Swift 1.1尚不支持类级变量,因此模块级私有变量通常用于存储类级函数的数据。