【发布时间】:2011-03-08 18:37:15
【问题描述】:
两者之间有什么真正的区别:
id value;
BOOL compare1 = [value isMemberOfClass:[SomeClass class]];
BOOL compare2 = [value class] == [SomeClass class];
检查value 是否是SomeClass 对象?
【问题讨论】:
-
在我看来 isMemberOfClass 也适用于派生类。不过我不知道 Cocoa,所以如果我错了,请不要杀了我。
-
@Jouke,没有杀戮,但你把它和
isKindOfClass:混淆了(that 也是接受派生类的那个)——isMemberOfClass:检查仅限特定会员(诚然,这是一种非常罕见的需求;-)。
标签: objective-c cocoa class rtti dynamic-cast