我的iOS应用正在返回此错误。
EXC_BAD_ACCESS(代码= EXC_i386_GPFLT)
return Singleton.instance
这是关于我正在使用的单身人士的代码。
class var sharedData : SharedData {
struct Singleton {
static let instance = SharedData()
}
return Singleton.instance
}
有人可以帮我理解这个错误并帮我解决吗?任何建议或提示都表示赞赏。
答案 0 :(得分:1)
您可以使用以下代码替换所有代码:
static let sharedData = SharedData()
答案 1 :(得分:1)
使用Swift 1.2,现在可以更轻松地创建单例:
class DataManager {
static let sharedInstance = DataManager()
/// To deny direct access, make your init function private if you want
private init() {
}
}
答案 2 :(得分:1)
我正在使用其他人如上所述的单身人士,
static let sharedData = SharedData()
它在真实设备上崩溃但在模拟器中没有崩溃。事实证明,我只需要清理项目并重建。 不要因为误报而堕落;)
答案 3 :(得分:-1)
我的Swift单例类中有一个命名错误的函数,它在调用时一定是在绊倒ARC。这个类从文件初始化另一个类,所以我最终得到了这个签名:
func initOtherClass(otherClass: NSObject, URL fileURL: NSURL) -> Bool
糟糕。将名称从init
更改为initialize
可解决EXC_BAD_ACCESS
错误。我希望这有助于拯救别人一段时间。