我有CustomView继承NSView。 以下是代码的一部分:
NSView* nsView = [(NSView*)[window contentView] hitTest:rctWindow.origin];
if([nsView isMemberOfClass:[CustomView class]] == NO)
std::cout << "isMemberOfClass failed.";
if ([NSStringFromClass([nsView class]) isEqualToString:NSStringFromClass([CustomView class])] == NO)
std::cout << "isEqualToString:NSStringFromClass failed.";
第一个字符串不断打印,意味着isMemberOfClass失败 永远不会打印第二个字符串,意味着isEqualToString:NSStringFromClass成功。
nsView实际上指向CustomView类,因此isEqualToString:NSStringFromClass正常工作,而isMemberOfClass则不正常。
我错过了什么?