gpt4 book ai didi

由于私有(private)保护级别,Swift 初始值设定项无法访问

转载 作者:搜寻专家 更新时间:2023-10-31 08:15:12 25 4
gpt4 key购买 nike

我正尝试在 Swift 中创建一个单例,但出现此错误:

initializer is inaccessible due to private protection level

这是我的代码(单例类)

class mySingleton{

private init() { }
static let sharedInstance = mySingleton()
var numbers = 0

func incrementNumberValue() {
numbers += 1
}
}

这是我调用单例的地方:

override func viewDidLoad() {
super.viewDidLoad()
let single = mySingleton().sharedInstance
}

这里是错误:

enter image description here你们知道为什么或如何解决这个错误吗?

最佳答案

你的线路:

mySingleton().sharedInstance

有错别字。正如所写,您正在尝试创建 mySingleton 的实例,然后在新实例上调用 sharedInstance 方法。这是两个错误。

你真正想要的是:

mySingleton.sharedInstance

现在这会在您的 mySingleton 类上调用 sharedInstance 类型常量。

顺便说一句——类名应该以大写字母开头。方法和变量名称应以小写字母开头。

关于由于私有(private)保护级别,Swift 初始值设定项无法访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40076944/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com