gpt4 book ai didi

ios - 从 swift 4.0 到 swift 4.1 崩溃

转载 作者:行者123 更新时间:2023-11-30 11:37:22 24 4
gpt4 key购买 nike

当我升级到 Xcode 9.3 时。我使用 Swift 4.1 编译我的应用程序。我发现应用程序在以下情况下崩溃:

xx.swift 
@objc func doSomething(_ stuff: Any) {
print("do")
}

yy.m
// call swift function
doSomething(nil) // crash in swift 4.1 but ok in swift 4.0

我知道如何修改代码。

我只是想知道在哪里可以获得信息。 Swift 源代码或信息在哪里告诉不同的更改?

最佳答案

实际上,我很惊讶它在 swift 4 中的工作方式。它一定会崩溃。现在看看你的函数

@objc func doSomething(_ stuff: Any) { // here stuff is not optional
print("do")
}

你用nil调用它

doSomething(nil) 

它在任何 swift 中都不起作用。因此,通过将 stuff 设置为可选来纠正它

@objc func doSomething(_ stuff: Any?) { 
print("do")
}

现在再次编译您的代码。

关于ios - 从 swift 4.0 到 swift 4.1 崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49604599/

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