nil Nil NULL NSNull 之间的区别
来源:互联网 发布:淘宝保证金怎么套现 编辑:程序博客网 时间:2024/06/08 03:19
nil Nil NULL NSNull 之间的区别
nil 是对objective c id 对象赋空值
例如
NSString
* string = [
NSString
stringWithFormat:@
"test"
];
string =
nil
;
对于objective c 集合类对象 比如数组对象,字典对象,当我们不需要再使用他们的时候,对他们release 的同时最好也把他们赋值为nil,这样确保安全性,下面一个简单的一个例子:如果不赋值nil,可能导致程序崩溃
NSArray * array = [NSArray arrayWithObjects:@"test",@"test1" ,nil]; [array release]; if (array) {
//仅仅对数组release,并没有赋空值的话,在程序某个地方如果继续对数组操纵,程序直接崩溃 NSString * string = [array objectAtIndex:0]; NSLog(@"%@",string); }
编程的时候对集合类对象先赋值为nil,再将其release这样可以保证程序安全性,苹果官方例子中也看到过在viewDidUnload把对象赋值nil,然后在
dealloc方法中将他们release,
Nil: A null pointer to an Objective-C class.表示对类进行赋空值
NULL: A null pointer to anything else, is for C-style memory pointers. 用于对非对象指针赋空值,比如C指针
NSNull 对于像NSArray这样的类型,nil或NULL不能做为加到其中的Object,如果定义了一个NSArray,为其分配了内存,又想设置其中的内容为空,则可以用[NSNULL null】返回的对象来初始化NSArray中的内容
阅读全文
0 0
- nil Nil NULL NSNull 之间的区别
- nil Nil NULL NSNull 之间的区别
- nil,Nil,NULL,NSNULL之间的区别
- nil Nil NULL NSNull 之间的区别
- nil、Nil、NULL、NSNull之间的区别
- nil Nil NULL NSNull 之间的区别
- nil,NSNull,NULL之间的区别
- Objective-C 中nil Nil NULL NSNull 之间的区别
- nil Nil NULL及NSNull 之间的区别
- Objective-C 中nil Nil NULL NSNull 之间的区别
- nil/Nil/NULL/NSNull的区别
- nil/Nil/NULL/NSNull的区别
- nil、Nil、NULL、NSNull 的区别
- nil, Nil, NULL和NSNull的区别
- nil/Nil/NULL/NSNull的区别
- nil/Nil/NULL/NSNull的区别
- Nil, nil, NULL, NSNull的一点区别
- nil,Nil,NULL,NSNull的区别
- 首发 | Gyrfalcon加入芯片角斗场,又一款改变AI界的产品问世
- $.getJson(url,data,callback)回调函数不执行的问题
- 【笔记】图的基础知识
- 时间戳转换时间
- [牛客网#35D 树的距离]离散化+线段树合并
- nil Nil NULL NSNull 之间的区别
- 异常 /C++
- ROS 学习记录
- [Android]配置Gradle的productFlavors构建项目用于多渠道打包或多环境运行
- 时间戳转几周前
- 如何突破Java程序员三年的门槛
- 论文笔记1:SummaRuNNer: A RNN based Sequence Model for Extractive Summarization of Documents
- Git-储藏(Stashing)
- MFC将ListCtrl列表导出到Excel-采用文件流写Excel兼容Html格式(不需要Excel环境)