栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

闭包中的隐式返回导致错误

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

闭包中的隐式返回导致错误

任何建议都不确定如何在没有虚拟return语句的情况下处理上述问题。

您已经很好地解决了问题。匿名函数自动使用单行函数主体作为返回值,因此,要防止这种情况导致类型与预期返回类型(Void)不匹配,您必须添加另一行代码,以使其
不是 单行函数身体。伪返回语句本身返回Void,是处理它的 方法。我会用它继续前进。有一些时髦的解决方法,但是您所拥有的正是我会做的。

编辑:要了解类型不匹配的来源,请尝试以下操作:

struct Test {    func voider() -> Void {}}let testMaybe = Optional(Test())let result = testMaybe?.voider()

现在

result
不是虚空了;这是包装空心的可选。那就是你正在发生的事。一个空值是预期的,但您的单行匿名函数返回一个包装空值的Optional。通过添加另一条显式返回Void的行,您解决了该问题。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/614002.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号