首页 > 解决方案 > iOS Swift 中的 Nil、nil、NULL NSNull

问题描述

iOS 中、 Nil和之间的基本区别是什么。与目标C有关吗?如果有人能用 swift 和客观的 C 分别解释会更好。nilNULLNSNullNSNull

标签: iosswiftmobile

解决方案


你可以参考这个链接

Objective-C 没有什么是零。nil 是一个指向空的对象指针。虽然在语义上与 NULL 不同,但它们在技术上是等价的。

在框架层面,Foundation定义了NSNull,它定义了一个类方法+null,它定义了单例NSNull对象。NSNull 与 nil 或 NULL 不同,因为它是一个实际的对象,而不是一个零值。

Foundation/NSObjcCRuntime.h 还将 Nil 定义为指向空的类指针。这个鲜为人知的 nil 标题案例表亲并不经常出现,但它至少一文不值。

新分配的 NSObject 开始生命时的内容设置为 0。这意味着该对象与其他点的所有点都为 nil。


推荐阅读