美文网首页iOS 开发之旅
Property类型和功能

Property类型和功能

作者: Bel李玉 | 来源:发表于2016-10-23 15:49 被阅读12次

    在OC每个类中,我们通常会根据自己的需要,添加自己需要的属性,对于我们不熟知的类和协议,我们可以通过class_copyPropertyList和protocol_copyPropertyList得到一个包含一个类所有属性的数组

    objc_property_t *class_copyPropertyList(Class cls, unsigned int *outCount)

    objc_property_t *protocol_copyPropertyList(Protocol *proto, unsigned int *outCount)

    举个例子

    @interface lender : NSObject

    @property (nonatomic, strong)NSArray *nameArray;

    @property (nonatomic, strong)NSString *name;

    @property(nonatomic,assign) NSInteger age;

    @end

    id lenderClass=objc_getClass("lender");// 获取lender类

    unsigned int outCount,i;

    objc_property_t*properties=class_copyPropertyList(lenderClass, &outCount);//得到属性数组

    for (i = 0; i < outCount; i++) {

    objc_property_t property = properties[i];

    fprintf(stdout, "%s %s\n", property_getName(property), property_getAttributes(property));//标准化输出,stdout 是一个系统的宏定义

    }

    运行结果

    nameArray  T@"NSArray",&,N,V_nameArray

    name  T@"NSString",&,N,V_name

    age  Tq,N,V_age

    相关文章

      网友评论

        本文标题:Property类型和功能

        本文链接:https://www.haomeiwen.com/subject/jqlkuttx.html