Objective-C 有两种方法来测试一个对象是否是特定类或子类的实例:
- (BOOL)isMemberOfClass:(Class)aClass;
返回一个布尔值,指示接收者是否是
给定类的实例。
- (BOOL)isKindOfClass:(Class)aClass;
返回一个布尔值,指示接收者是否是
给定类的实例或继承自的任何类的实例
那个班。
在 Swift 中,我可以使用以下方法测试后者is
操作员:
if myVariable is UIView {
println( "I'm a UIView!")
}
if myVariable is MyClass {
println( "I'm a MyClass" )
}
如何测试实例是否是 Swift 中的特定类或类型(即使不处理 NSObject 子类)?
注意:我知道func object_getClassName(obj: AnyObject!) -> UnsafePointer<Int8>
.
请参阅我的答案(可能重复)https://stackoverflow.com/a/26365978/195691 https://stackoverflow.com/a/26365978/195691:
现在可以在 Swift 中比较动态类型的标识:
myVariable.dynamicType === MyClass.self
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)