ios Nil nil NULL NSNull的区别和使用

来源:互联网 发布:遂昌县网络干部学院 编辑:程序博客网 时间:2024/06/08 08:49

nil : 指向oc对象的空指针

Nil : 指向oc的空指针

NULL : 一般赋值给nil之外的其他空值。如SEL,基本类型的空指针等;

                 [NSApp beginSheet:sheet
                modalForWindow:mainWindow

                modalDelegate:nil         //pointing to an object

                didEndSelector:NULL   //pointing to a non object/class

                contextInfo:NULL];       //pointing to a non object/class

NSNull : 在集合对象中表示空值的对象。 NSNull只有一个方法:+ (NSNull *) null;

              [NSNull null]用来在NSArrayNSDictionary中加入非nil(nil表示列表结束)的空值.   [NSNull null]是一个对象,他用在不能使用nil的场合。


看一段解释:

nil -> Null-pointer to objective- c object

NIL -> Null-pointer to objective- c class

null-> null pointer to primitive type or absence of data.


例子:

    NSURL * url = nil;

    Class class = Nil;

    int *pointer = NULL;

若obj为nil, [ obj message ]将返回NO,而不是NSException 若obj为NSNull,将抛出异常NSException.


详细内容请看:http://blog.csdn.net/xdrt81y/article/details/8981133


0 0
原创粉丝点击