zoukankan      html  css  js  c++  java
  • NSNull空值

    1、前言

    • 作为占据空间的一个空值,如用在数组或字典中占据一个没有任何值的空间。
    • 1.1 NULL & nil 的区别:

      • nil 是 OC 的,空对象,地址指向空的对象,指针地址指向的是 NULL。
        • 在 OC 中,可以给空对象(nil)发送任何消息,不会出现错误。
      • NULL 是 C 的,空地址,地址的数值是 0,是一个长整数。
        • 表示地址是空,不能给 NULL 消息。
      • 从 Xcode 6 开始,取消了 NULL 的智能提示,因为 Swift 中没有 NULL 的概念,只有 nil。
      • 在 OC 中,使用 NULL 或者 nil 都不会出错,但是:从概念的角度而言,** 的参数,不想获取对应的内容,应该传入 NULL 。
      • [NSNull null] 就是为了向数组和字典添加空值使用的。
    • 1.2 ** 类型:

      • 指针的指针,是一个很古老的 C 语言的技巧。
      • 用处:一个方法,可以返回多个数值。
      • 返回值,用户代号,同时还希望返回用户年龄,按照以往的套路,会新建一个 person 类。

    2、NSNull 的创建

    // 返回一个单例类对象
    NSNull *nl = [NSNull null];
    

    3、** 类型

    - (void)demo {
    
    	int age = 0;
    	NSString *myTitle = nil;
    
    	[self userInfo:&age title:&myTitle];
    
    	NSLog(@"%d %@", age, myTitle);
    }
    
    - (int)userInfo:(int *)age title:(NSString **)title {
    
    	*age = 10;
    	*title = [NSString stringWithFormat:@"BOSS - %d", 123];
    
    	return 1;
    }
    
  • 相关阅读:
    JS笔记009
    JS笔记008
    JS笔记007
    JS笔记006
    JS笔记005
    JS笔记004
    JS笔记003
    JS笔记001
    CSS3笔记012
    expdp SYNONYM of publick and schema owner
  • 原文地址:https://www.cnblogs.com/CH520/p/9448204.html
Copyright © 2011-2022 走看看