美文网首页
nil == 0的陷阱

nil == 0的陷阱

作者: 光明自在 | 来源:发表于2016-04-27 12:09 被阅读25次

在查一个bug的时候,惊讶的发现自己把一个枚举类型(NSInteger)赋值给了一个NSNumber,然而编译器居然没有报错😡

直接将一个NSInteger类型赋值给NSNumber类型,编译器是会报错的。然而由于nil与0等价,因此当这个NSInteger是值为0的常量时,编译器会将其视为nil,因此不会报错。

由此,我们可以认识到Swift的Optional类型的价值,从语言的层面,减少程序员犯错的几率。

相关文章

网友评论

      本文标题:nil == 0的陷阱

      本文链接:https://www.haomeiwen.com/subject/rujcrttx.html