2009-06-25 17 views
5

我已经重写了一个综合属性,因为我想添加一个NSAssert。重写Objectice-C中的合成属性好还是坏?

这可以做(即覆盖)或认为不好的做法?

@synthesize someField; 

-(NSString*)someField { 
    NSAssert(someField != nil,@"someField"); 
    return someField; 
} 

感谢

回答

5

这很好。从documentation

你使用@synthesize关键字 告诉编译器,它应该 合成setter和/或吸气剂 方法的属性,如果你不 的@implementation 块内提供给他们。

所以,如果你提供它们,那么编译器将使用你的,而不管@synthesize指令。

+0

为什么你想要?使用现代(64位和iOS)运行时,这是创建ivars的便捷方式。 – 2011-06-03 07:03:20