我正在调查UITableView
类,我发现:
open func register(_ cellClass: Swift.AnyClass?, forCellReuseIdentifier identifier: String)
Reading here https://developer.apple.com/reference/swift/anyclass I know AnyClass
实际上是一个类型别名。
typealias AnyClass = AnyObject.Type
我不明白的是:Swift.AnyClass
什么是Swift
do?
I already know that the parameter it takes is something like CustomTableViewCell.self
添加到已接受答案的更多信息:
首先Swift.AnyClass
是类型别名AnyObject.Type
。这意味着它是一个可以保存任何“类类型”的元类型,因此名称AnyClass
位居首位。
class A {}
class B {}
var anyClass: AnyClass? = nil /* could be ': AnyObject.Type' */
anyClass = A.self
anyClass = B.self
var anyInstanceOfAClass: AnyObject? = nil
anyInstanceOfAClass = A()
anyInstanceOfAClass = B()
Swift
是标准库的实际模块名称。如果您需要一种消除歧义的方法,您可以自己使用它。例如你可以这样做:
struct Array<T> {
private var array: Swift.Array<T> { ... }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)