我们如何在swift编程语言中定义以下内容:
换句话说,这些客观c术语中的每一个都是迅速等同的.此外,还想知道是否存在非结构c类型(如结构和枚举)的特定用例.提前致谢.
gwc*_*fey 120
关于等价物:
NULL
在Swift中没有相同的东西. nil
nil
在Swift中也被称为Nil
在Swift中没有相同的东西[NSNull null]
可以在Swift中作为NSNull()访问注意:这些是基于阅读和游戏的猜测.更正欢迎.
但是Swift中的nil/NULL处理与Objective C非常不同.它看起来旨在强制执行安全和护理.阅读手册中的选项.一般来说,一个变量根本不能为NULL,当你需要表示"缺少值"时,你会以声明的方式这样做.
Rie*_*ien 21
如果需要在低级指针操作中使用NULL,请使用以下命令:
UnsafePointer<Int8>.null()
Run Code Online (Sandbox Code Playgroud)
Tom*_*mmy 12
nil
意味着"没有价值",但与Objective-C的其他意义完全不同nil
.
它只能分配给可选变量.它适用于文字和结构(即它适用于基于堆栈的项目,而不仅仅是基于堆的项目).
nil
即使它们是类(即它们存在于堆中),也不能分配非可选变量.
所以它显然不是一个NULL
指针而且与一个指针不相似.它共享名称,因为它旨在用于相同的语义原因.
Swift的nil
与nil
Objective-C中的不一样。
在Objective-C中,nil
是指向不存在对象的指针。在Swift中,nil
它不是指针,而是缺少某种类型的值。可以将任何类型的Optionals设置为nil
,而不仅仅是对象类型。
NULL
在Swift中没有等效功能。
nil
在Swift中也称为nil
Nil
在Swift中没有等效功能
[NSNull null]
可以在Swift中以 NSNull()
Swull中Null的概念恢复为Optional枚举.枚举是这样定义的
enum Optional<T> {
case Some(T)
case None
}
Run Code Online (Sandbox Code Playgroud)
这意味着你不能在Swift中拥有一个未初始化的变量/常量.如果你试图这样做,你会得到一个编译错误,说变量/常量不能是未初始化的.您需要将它包装在Optional枚举中.
这是您在Swift中找到的唯一Null概念
归档时间: |
|
查看次数: |
79750 次 |
最近记录: |