当前位置: 首页 > news >正文

iOS 中的 nil、Nil、NULL、NSNull 僵尸对象和野指针

iOS 中的 nil、Nil、NULL、NSNull 僵尸对象和野指针-CSDN博客

类型含义使用场景示例
nil表示一个指向 Objective - C 对象的空指针。在 Objective - C 和 Swift(与 Objective - C 交互时)中用于表示对象不存在。当一个对象变量没有指向任何有效的对象实例时使用。例如,一个UIViewController变量在没有初始化或者已经被释放后可以赋值为nilObjective - C:
UIViewController *viewController = nil;
Swift(与 Objective - C 交互):
let viewController: UIViewController? = nil
Nil用于表示指向 Objective - C 类的空指针。它和nil的区别在于nil是用于对象实例,而Nil是用于类本身。在 Objective - C 中,当你需要一个类指针变量但没有具体指向某个类时使用。不过在实际开发中这种情况比较少见。Objective - C:
Class someClass = Nil;
NULL在 C 和 C++ 中表示空指针,在 iOS 开发中主要用于 C 语言风格的指针。当一个指针不指向任何有效的内存地址时使用。一般用于 C 语言函数返回指针类型,并且没有有效返回值的情况。在 iOS 开发中,如果涉及到 C 语言库或者对底层内存操作(如 Core Foundation 中的部分函数)会用到。C:
void *pointer = NULL;
在 iOS 开发中(Core Foundation 示例):
CFStringRef string = NULL;
NSNull是 Foundation 框架中的一个单例类,用于表示集合(如NSArrayNSDictionary)中的空值。因为nil不能直接放在集合中作为一个元素来表示 “这里有一个空值”,所以使用NSNull当需要在集合类(如数组、字典)中表示一个有效的占位符为空的值时使用。例如,一个NSDictionary的某个键值可能是NSNull,表示这个键对应的是一个空值而不是键不存在。Objective - C:
NSArray *array = @[ @"value", [NSNull null] ];
Swift:
let array: [Any] = ["value", NSNull()]

http://www.mrgr.cn/news/81831.html

相关文章:

  • python版本的Selenium的下载及chrome环境搭建和简单使用
  • HTML基础到精通笔记
  • 【Java项目】基于SpringBoot的【人职匹配推荐系统】
  • 【非关系型数据库Redis 】 入门
  • “Gold-YOLO:基于聚合与分发机制的高效目标检测新范式”
  • git更改当前项目的远程仓库,保留原始仓库提交记录提交到新仓库
  • 深度学习笔记(5)——目标检测和图像分割
  • 嵌入式小白
  • 【网络】CookieSession
  • 玩转影刀AI Power-风景小助手教学
  • 2021.12.28基于UDP同信的相关流程
  • 【MySQL】第一弹----库的操作及数据类型
  • Tauri2+Leptos开发桌面应用--Sqlite数据库操作
  • 进军AI大模型-环境配置
  • vue Promise使用
  • Python爬虫(一)- Requests 安装与基本使用教程
  • 二叉树相关性质及其遍历
  • 【老白学 Java】第一次绘制
  • 阿里云人工智能工程师ACA认证免费课程学习笔记
  • Maven + MyBatis
  • MoH:将多头注意力(Multi-Head Attention)作为头注意力混合(Mixture-of-Head Attention)
  • Vuex用法
  • C++进阶重点知识(一)|智能指针|右值|lambda|STL|正则表达式
  • springboot整合log4j2案例以及异常输出格式案例2
  • 【SpringMVC】REST 风格
  • Pytorch | 利用DTA针对CIFAR10上的ResNet分类器进行对抗攻击