我有一个Objective-C类"MyClass"。在MyClass.m中,我有一个类扩展声明了一个CGFloat
属性:
@interface MyClass ()
@property (nonatomic) CGFloat myFloat;
@end
@implementation MyClass
@synthesize myFloat;
//...
@end
当属性使用
readonly
关键字声明时,会发生什么变化(如果有的话)?@interface MyClass ()
@property (nonatomic, readonly) CGFloat myFloat;
@end
@implementation MyClass
@synthesize myFloat;
//...
@end
也许在第一种情况下我可以在MyClass中写self.myFloat = 123.0;
和 CGFloat f = self.myFloat;
?然后在第二种情况下,readonly
关键字会防止赋值self.myFloat = 123.0;
,但允许读取CGFloat f = self.myFloat;