swift中基础对象的readonly属性

时间:2017-03-01 23:05:19

标签: objective-c swift foundation

如何将@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

1 个答案:

答案 0 :(得分:1)

有几种不同的方法可以做到。

如果您希望在创建时设置它而不在之后更改,请使用let代替var

如果您希望仅通过对象自己的方法进行更改,请使用private(set)