swift – 为什么要避免强行打开
有些情况下你忘了设置一个值(所以它实际上是一个错误),并且使用强制解包运行程序会导致问题崩溃,这可以让你找到你忘记设置值的错误已经设定.
从关于避免强制展开的帖子开始,总是提出强行解包会导致程序崩溃,因此这是一件坏事.当一个问题确实存在错误时崩溃有什么问题呢? 请举例说明强行展开可能是坏事. (我不是说强行打开适合所有事情.)
强制解包(我也将包括强制转换)只应当你作为程序员知道一个事实,即一个可选的永远不会是nil的事实,除非你的代码中有一个明确的错误在开发过程中(然后你希望它崩溃).
有许多例子表明这种类型的强制展开是合适的.例子包括: >获取应用程序包中已知文件的路径(nil表示您在开发期间忘记定位文件). 显然还有很多其他情况下强制解包是合适的,但你必须清楚地了解这些情况. 但是,有许多运行时决策导致您无法保证的选项,并且不应强制解包此类情况. 例子包括: >处理任何用户输入.永远不要假设用户输入有效数据.永远不要假设值可以按预期转换.始终检查零结果. 最后,开发人员具有适当的经验和理解选项如何工作,他们的意思,以及何时值可能或者实际上不是零的开发人员能够在适当的时候安全地使用强制解包.明智地使用它. 永远不要使用强制解包,因为Xcode建议让编译器满意. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |