Objective C语言中nil、Nil、NULL、NSNull的区别
2024-09-04 07:50:00
以下内容是基于搜集整理的网上资料,供参考。
nil:指向Objective C语言中对象的空指针,其定义值为(id)0。
Nil:指向Objective C语言中类(Class)的空指针,其定义值为(Class)0。
NULL:指向C语言中的标准空指针,其定义值为(void *)0。
NSNull:在Objective C语言的集合对象中,表示空值的对象,其定义值为[NSNull null]。[NSNull null]是一个对象,用在不能使用nil的场合。
因为在NSArray和NSDictionary中nil有特殊的含义(表示列表结束),所以不能在集合中放入nil值。如要确实需要存储一个表示“什么都没有”的值,可以使用NSNull类。例:[NSMutableArrayObj addObject:[NSNull null]];
若obj为nil:[obj message]将返回NO,而不是NSException。
若obj为NSNull:[obj message]将抛出异常NSException。
最新文章
- BZOJ 2424: [HAOI2010]订货
- 使用WebService和不使用WebService哪个速度更快哪个更安全
- C#操作Word的辅助类(word2003) 修改完善版
- hdu1358 KMP
- 【转】asp.net中利用session对象传递、共享数据[session用法]
- iOS开发--基于AFNetWorking3.0的图片缓存分析
- oracle存储过程返回数据集结果
- copy(source,destination)拷贝文件
- CSS3 border属性的妙用
- php 便利数组方法
- JQuery常用API 核心 效果 JQueryHTML 遍历 Event事件
- [02] Servlet获取请求和页面跳转
- js遍历 子节点 子元素
- CentOSmini安装gcc8.2
- 页面系统,浏览器检测- 网页基础模块(JavaScript)
- 提升----你所不知道的JavaScript系列(3)
- Day 5 笔记 dp动态规划
- excel——之锁定表头不可编辑
- python学习笔记(3)--IDLE双击运行后暂停
- react 关于this.setState使用时,第一次无法获取数据,第二次获取的数据是第一次触发的疑问