gpt4 book ai didi

swift - "is"和 isKindOfClass() 之间有区别吗?

转载 作者:IT王子 更新时间:2023-10-29 05:02:22 25 4
gpt4 key购买 nike

Swift 提供了is 关键字(和as?)来检查一个对象是否可以成功向下转型:

if foo is MyClass {
// ...
}

但是NSObjectProtocol也提供了原来的func isKindOfClass(aClass: AnyClass!) -> Bool:

if something.isKindOfClass(MyClass) {
// ...
}

对于符合 NSObjectProtocol 的类,这真的有很大不同吗?

最佳答案

有区别:is 适用于 Swift 中的任何类,而 isKindOfClass() 仅适用于那些子类NSObject 或以其他方式实现 NSObjectProtocol

关于swift - "is"和 isKindOfClass() 之间有区别吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24877661/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com