ios基础之属性set get方法同时重写报错的问题

今天有一个初学者遇到一个问题,就是使用property的时候,同时重写set

get方法会报错,如

@interface ViewController : UIViewController{

}

@property (nonatomic, copy) NSString *name;

- (void)setName:(NSString *)name;

- (NSString *)name;

@end

单独重写任意一个方法都不会报错,但是同时重写的话,会报错!


主要是因为当你复写了get和set方法之后@property默认生成的@synthesize就不会起作用了,这也就意味着你的类不会自动生成出来实例变量了,你就必须要自己声明实例变量,如下:


这时就不会报错了。


第二种办法: 在实现里面写 @synthesize name = _name;

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

推荐阅读更多精彩内容

  • 今天有一个初学者遇到一个问题,就是使用property的时候,同时重写set get方法会报错,如#import ...
    xywjun阅读 18,494评论 2 23
  • 半个月的剽悍晨读,我收获了三个方面的知识精华。 一、学习力 大家最关心的一个问题可能是怎样才能获得成功? 问...
    曲佳惠阅读 6,678评论 1 2
  • “我要读到24岁,刚好大学毕业!” 小时候的期许在时光的见证下应验了,意料之外,也在意料之中。本想着能上个不错的二...
    红色酒心巧克力阅读 2,767评论 0 0
  • 凉风渐微冷, 皎月繁星, 心向往。 若使桂宫寒窗, 纵使琼楼玉宇, 谁人往?
    斯何阅读 1,540评论 0 2
  • 不见蜀地飘雪,但教蝴蝶入梦 相思之苦何如,相思之人才懂 三生石上轮回,彼岸花下难收 孟婆汤,这一碗,怎么够?!
    不灬良人阅读 2,600评论 0 0