黑马程序员技术交流社区

标题: 空指针 nil和Nil及NULL、NSNull的区别 [打印本页]

作者: 阿么    时间: 2016-3-14 23:21
标题: 空指针 nil和Nil及NULL、NSNull的区别
1)空指针:没有指向任何东西的指针,给空指针发送消息不会报错

2)nil和Nil及NULL、NSNull的区别:

nil:是一个对象值;如果我们要把一个对象设置为空的时候就用nil;
A null pointer to an Objective-C object. ( #define nil ((id)0) )

Nil:是一个类对象的值,如果我们要把一个Class类型的对象设置为空的时候就用Nil ;
A null pointer to an Objective-C class.

NULL 是一个通用指针;
A null pointer to anything else. ( #define NULL ((void *)0) )

NSNull 是一个对象,它用在不能使用nil的场合;A class defines a singleton object used to represent null values in collection objects (which don't allow nil values).
                                                                                                                    
[NSNull null]: The singleton instance of NSNull.
[NSNull null]是一个对象,他用在不能使用nil的场合。

作者: wx_MkPtTU4D    时间: 2016-3-15 00:31
进来看看
作者: 简单的爱    时间: 2016-3-15 19:42
是的呢,总结的挺好的
作者: itheimaly    时间: 2016-3-15 21:18
可以可以
作者: 彼岸花开    时间: 2016-3-16 00:12
六六六~~




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2