今天有一個初學者遇到一個問題,就是使用property的時候,同時重寫set
get方法會報錯,如
@interface ViewController : UIViewController{
}
@property (nonatomic, copy) NSString *name;
- (void)setName:(NSString *)name;
- (NSString *)name;
@end
單獨重寫任意一個方法都不會報錯,但是同時重寫的話,會報錯!

主要是因為當你復寫了get和set方法之后@property默認生成的@synthesize就不會起作用了,這也就意味著你的類不會自動生成出來實例變量了,你就必須要自己聲明實例變量,如下:

這時就不會報錯了。