@synthesize in objective-c just implements property setters and getters:
- (void)setCoolWord:(NSString *)coolWord {
_coolWord = coolWord;
}
- (NSString *)coolWord {
return _coolWord;
}
It is true with Xcode 4 that this is implemented for you (iOS6 requires Xcode 4). Technically it implements @synthesize coolWord = _coolWord
(_coolWord
is the instance variable and coolWord
is the property).
To access these properties use self.coolWord
both for setting self.coolWord = @"YEAH!";
and getting NSLog(@"%@", self.coolWord);
Also note, both the setter and getter can still be manually implemented. If you implement BOTH the setter and getter though you NEED to also manually include @synthesize coolWord = _coolWord;
(no idea why this is).
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…