zoukankan      html  css  js  c++  java
  • iOS

    前言

    	@interface NSNull : NSObject <NSCopying, NSSecureCoding>
    
    • 作为占据空间的一个空值,如用在数组或字典中占据一个没有任何值的空间。

    • NULL & nil 的区别:

      • nil 是 OC 的,空对象,地址指向空的对象,指针地址指向的是 NULL。

      • 在 OC 中,可以给空对象(nil)发送任何消息,不会出现错误。

      • NULL 是 C 的,空地址,地址的数值是 0,是一个长整数。

      • 表示地址是空,不能给 NULL 消息。

      • 从 Xcode 6 开始,取消了 NULL 的智能提示,因为 Swift 中没有 NULL 的概念,只有 nil。

      • 在 OC 中,使用 NULL 或者 nil 都不会出错,但是:从概念的角度而言,** 的参数,不想获取对应的内容,应该传入 NULL 。

      • [NSNull null] 就是为了向数组和字典添加空值使用的。

    • ** 类型:

      • 指针的指针,是一个很古老的 C 语言的技巧。

      • 用处:一个方法,可以返回多个数值。

      • 返回值,用户代号,同时还希望返回用户年龄,按照以往的套路,会新建一个 person 类。

    1、NSNull 的创建

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

    2、** 类型

    	- (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;
    	}
    
  • 相关阅读:
    隐马尔可夫模型
    Win10家庭版安装Linux子系统
    python 里的常见包及学习链接
    perl 从命令行读取文件并打开
    Linux 压缩解压缩
    python 2.7.9 安装beautifulsoup4
    成绩排名
    urlretrieve下载图片--爬虫
    python实现人工智能之路--语音识别加语音合成
    django中间件解决跨域问题-No 'Access-Control-Allow-Origin'
  • 原文地址:https://www.cnblogs.com/QianChia/p/5782812.html
Copyright © 2011-2022 走看看