ios - Swift 3 setter/getter 方法

标签 ios properties swift3 getter

我想编写 getter 并希望每次调用时 getter 都返回相同的对象。这是我的代码。

var someObject:NSObject? {
    get {
        if _someObject == nil {
            _someObject = NSObject()
        }
        return _someObject;
    }
}

编译器报错 使用未解析的标识符“_someObject” 如何在 Swift 3 中编写正确的 getter 方法?

最佳答案

不要按字面意思翻译 Objective-C 代码。

Swift 等价物是惰性计算属性

lazy var someObject : NSObject = {
    return NSObject()
}()

该对象一次在第一次访问该属性时创建,并且
你总是得到一个非可选对象。

关于ios - Swift 3 setter/getter 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40828717/

相关文章:

ios - Realm 对象已被删除或失效

ios - NSURLProtocol + UIWebView + 某些域 = app UI frozen

ios - 保存特定 Index 的 tableView 数据,该 Index 是使用点击手势点击的,但不使用 didSelectItemAt

objective-c - 我什么时候应该明确使用@synthesize?

iOS - 根据内容增加 UITextField 高度

ios - 在 OpenGL ES 1.1 中绘制二维三角形时如何定义顺序?

ios - 将另一个类的项目添加到另一个类的属性。 Objective-C

C# 反射 : Fastest Way to Update a Property Value?

ios - 从 swift 3 中的标签栏移动时如何重新加载页面?

ios - 我怎么知道我制作的 iOS 应用程序是不是 32 位的?我该如何改变呢?