如何将@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
答案 0 :(得分:1)
有几种不同的方法可以做到。
如果您希望在创建时设置它而不在之后更改,请使用let
代替var
。
如果您希望仅通过对象自己的方法进行更改,请使用private(set)
。