如何在objective-c中识别一类数据类型bool或char的属性?

时间:2014-02-27 08:34:30

标签: objective-c

unsigned int outCount, i;

objc_property_t *properties = class_copyPropertyList([self class], &outCount);

for (i = 0; i < outCount; i++)
{
    objc_property_t property = properties[i];

    NSString *propertyType = [NSString stringWithCString: property_getAttributes(property) encoding:NSUTF8StringEncoding];
}

propertyType始终为Tc,V_xxx此属性是bool还是char。

如何在objective-c中识别数据类型为bool或char的类的属性?

1 个答案:

答案 0 :(得分:0)

你不能因为在Objective-C BOOL中是unsigned char。 所以你可以做那样的事情

BOOL b = 10;
NSLog(@"%d", b); // 10

bool可以只是0和1:

bool b = 10;
NSLog(@"%d", b); // 1

所以没有办法在BOOL和char之间做出100%的区分。