isKindOfClass 各自的核心基础?

问题描述 投票:0回答:1

CoreFoundation 有没有像

isKindOfClass
这样方便的方法来检查班级的血统?

objective-c core-foundation
1个回答
5
投票

由于 CoreFoundation 基于“不透明”引用,因此很难检查未知对象。没有像普通 Objective-C 类那样的 isa 指针,您可以查看它来找出任意对象的类型。然而,CF 提供了一些可以帮助您的函数:具体来说,CFGetTypeID():

CFTypeID type = CFGetTypeID(anObject); 
if (CFArrayGetTypeID() == type)
    printf("anObject is an array.");
else
    printf("anObject is NOT an array.");

请参阅 CF 类型参考

© www.soinside.com 2019 - 2024. All rights reserved.