【IOS】 readonly IOS下实战入门
当非常多XXX.h 文件属性YY设计中,对外的设计是 YY(readonly) 时。外界便不能改动该属性,
同一时候问题也来了,该XXX类的内部也不能改动改YY属性了。你瞬间凌乱过么。
。。Y_Y
然后就发现例如以下两种方法:
一:指针
永远不要小看指针的力量,在内部能够用 obj->_YY 的方式改动YY属性了,这样的方式也确实
有点让人YY
// 瞬间变红有木有 // self.YYname = @"skyming"; self->_YYname = @"skyming"; 或 _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