swift学习之错误代码 EXC_BCD

      刚刚看到了可选(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

你可能感兴趣的:(可选类型,xcode7.1.1)