在有了自动合成属性实例变量之后,@synthesize还有哪些使用场景?

这个问题有点困惑人,还以为@synthesize除了自动合成还有其他的用处,查了好久也没发现,这玩意就是用来自动合成的。问题的意思是编译器让我们不再用写synthesize后,有什么场景还会用到这个。
有以下几个情况

  • 同时重写了setter和getter时重写了
  • 只读属性的getter时
  • 使用了@dynamic时
  • 在 @protocol 中定义的所有属性
  • 在 category 中定义的所有属性重载的属性
  • 当你在子类中重载了父类中的属性

你必须 使用@synthesize来手动合成ivar。
像这样会报错。第一种情况,同事实现了getter和setter函数。

屏幕快照 2016-04-17 12.36.50.png

参考链接http://stackoverflow.com/questions/19784454/when-should-i-use-synthesize-explicitly

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容