gpt4 book ai didi

swift 3 - !与?对于可选的函数参数

转载 作者:行者123 更新时间:2023-11-28 09:54:24 25 4
gpt4 key购买 nike

在 Swift 3 中,当一个函数具有可选参数时,函数之间有什么区别:

func doThis(num: Int!)

func doThat(num: Int?) 

最佳答案

两者都声明 num 是可选的 Int

如果你执行 Int!,它可以在你的函数中隐式解包。这意味着您可以在需要普通(非可选)Int 的地方使用它。在这种情况下,如果它恰好为 nil,它将失败。

有了“正确的”Int?,编译器将不允许您在需要 Int 的地方使用 num,并强制您包含一个先检查/守卫。

Int! 构造主要用于与 Objective-C 代码的互操作性,其中引用类型是否可选是不清楚的。您应该在新代码中避免使用它。

关于 swift 3 - !与?对于可选的函数参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39824580/

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