标签:
当很多XXX.h 文件属性YY设计中,对外的设计是 YY(readonly) 时,外界便不能修改该属性,
同时问题也来了,该XXX类的内部也不能修改改YY属性了,你瞬间凌乱过么。。。Y_Y
然后就发现如下两种方法:
一:指针
永远不要小看指针的力量,在内部可以用 obj->_YY 的方式修改YY属性了,这种方式也确实
有点让人YY
// 瞬间变红有木有 // self.YYname = @"skyming"; self->_YYname = @"skyming";
二:重新声明属性
貌似很正规的样子,如果自己写的类属性有不多,公司也没有什么其他代码规范,直接放在
.m 中重新声明一遍就好了
对比下吧 .h 中的声明
@interface XXX : NSObject @property (nonatomic, readonly, strong) NSString *YYname; @end
.m 中的声明 @interface XXX () @property (nonatomic, readwrite, strong) NSString *YYname; @end如果你同一个属性,.h 文件、 .m 文件中都是readonly ,就会报错
当然如果属性多了,或者在SDK中的话直接就再写个Private的.h 吧
而且很多公司内部的SDK中也是这么搞的、、、
如果你们公司的SDK是这样,就默默点赞吧, Y_Y
标签:
原文地址:http://blog.csdn.net/skymingst/article/details/42026695