致命错误:解开可选值 (lldb) 时意外发现 nil



我在解包时遇到问题,不理解此错误:

fatal error: unexpectedly found nil while unwrapping an Optional value (lldb)`. 

所发现的一切帮助我不会继续前进。在第一个视图控制器中,我有此代码

var everypicture = [EveryPicture] ()

我将第一个视图控制器的委托呈现给第二个视图控制器:

var delegate: FirstViewController?` 

在赛格。然后我从代表那里得到每张图片并得到计数:

let piccount = delegate?.everypicture.count
print("(piccount!)")` 

但它带来了错误。是什么让我错了,错误意味着什么?感谢您的帮助

据我了解,错误消息说当它试图解开一些值时,它得到了 nil 对象。解包操作 - 从可选值 real 1 获取。在您发布的代码中,我只能看到一次此操作

print("(piccount!)")

所以picccount变量是nil,使用运算符"!"你试图通过说"男人不是nil,确定"来解开它,但它是。

查找问题集的位置 i 停止执行 ob 此行

let pic count = delegate?.everypicture.count

并检查是否:

1) 委托为零

2)数组为零(不应该是,但仍然不难检查)

希望它有帮助。

看起来您永远不会为delegate赋值。您只是将其类型定义为 FirstViewController? .您需要分配该类的实例。 piccount成为可选delegate因为本身是可选的。强制解开包装piccount不正确(因为delegate为零);请改用if let

相关内容

  • 没有找到相关文章

最新更新