刚刚看到了可选(Optional)类型。自己写的测试代码如下:
var m_int:Optional<Int>; print("this is convert value \(m_int!)");代码在编译的时候出错了:
原因很简单,这里就是只是简单的声明了变量,但却没有赋值。
当执行 “强制解析可选” 时, 问题就出来了,无法完成对一个没有赋值的变量进行强制解析,顺理成章的就会出现EXC_BCD 错误。
注意:
1,在bject_c中,nil表示的是一个指向不存在的对象的指针。而在swift 中,表示空关键字为 nil ,它没有定义其他含义。
2,可选类型的变量或者常量在有值的时候返回值,没有值的时候不会返回任何东西,包括false。(有点绕? 多读几次吧)
3,nil不能用于非可选的常量或者变量,如果你的代码中可能会出现没有值的情况,请务必声明其为可选类型。如果声明了一个可选常量或者变量没有初始化,程序会默认赋值为nil
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。