Swift 中的基础对象只读 属性
readonly property for a foundation object in Swift
如何将 @property (readonly) NSDate *creationDate;
重构为 Swift 属性 结构?
struct structObject {
var name: String
var completed: Bool
var creationDate: NSDate
}
属性 是否应该专门配置为 get
属性? Objective-C 中的代码是:
#import <Foundation/Foundation.h>
@interface ToDoItem : NSObject
@property NSString *itemName;
@property BOOL completed;
@property (readonly) NSDate *creationDate;
@end
有几种不同的方法可以做到这一点。
如果您希望它在创建时设置并且之后不更改,请使用 let
而不是 var
。
如果你想让它只被对象自己的方法改变,使用private(set)
。
如何将 @property (readonly) NSDate *creationDate;
重构为 Swift 属性 结构?
struct structObject {
var name: String
var completed: Bool
var creationDate: NSDate
}
属性 是否应该专门配置为 get
属性? Objective-C 中的代码是:
#import <Foundation/Foundation.h>
@interface ToDoItem : NSObject
@property NSString *itemName;
@property BOOL completed;
@property (readonly) NSDate *creationDate;
@end
有几种不同的方法可以做到这一点。
如果您希望它在创建时设置并且之后不更改,请使用 let
而不是 var
。
如果你想让它只被对象自己的方法改变,使用private(set)
。