gpt4 book ai didi

ios - 我应该选择可选项还是隐式解包的可选项

转载 作者:搜寻专家 更新时间:2023-11-01 05:51:28 25 4
gpt4 key购买 nike

假设您需要编写将闭包作为参数之一的函数,以将其作为回调调用。此函数的用户应该能够传递 nil 而不是闭包。在这种情况下,您会使用可选值还是隐式展开的可选值?

提前致谢。

最佳答案

作为对 Nate 的回答(我认为解决方案)的补充,我的建议是永远不要使用隐式展开的可选值,除非你有充分的理由。延迟初始化是一个很好的理由。

  • 如果您不确定,请不要使用它

  • 如果可选项在其后初始化生命周期中可以为 nil,则不要使用它

  • 如果您想避免输入额外的 ?,请不要使用它

  • 如果第 3 方函数、方法或闭包传递一个可选值,不要将其转换为隐式解包

  • 如果第 3 方函数、方法或闭包提供隐式解包...请自行判断是否显式检查是否为非零(即是否相信可选值始终不为零)

  • 更一般地说,如果您对隐式展开的工作方式有疑问,最好始终避免

关于ios - 我应该选择可选项还是隐式解包的可选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27195149/

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