1
打印對象的收益率的描述LLDB使用關鍵字「一些」,在對象的描述(這裏我PO一個可選的字符串)的前面:Xcode控制檯中的「Some」關鍵字是什麼意思?
(lldb) po someString
Optional<String>
- Some: "Hello Jupiter"
這是什麼關鍵字的含義;爲什麼在那裏?
打印對象的收益率的描述LLDB使用關鍵字「一些」,在對象的描述(這裏我PO一個可選的字符串)的前面:Xcode控制檯中的「Some」關鍵字是什麼意思?
(lldb) po someString
Optional<String>
- Some: "Hello Jupiter"
這是什麼關鍵字的含義;爲什麼在那裏?
Optional
是enum
與兩種情況下,none
,並some(wrapped)
:
enum Optional<Wrapped> {
case Some(Wrapped)
case None
}
正如可以看到的,Optional
要麼具有Some
的值,與相關聯的值(數值Optional
包裹物),或None
。 Optional.None
實際上是nil
的含義。
在這種情況下,調試器告訴你someString
是Optional<String>
(又名String?
),其值爲Optional.Some("Hello Jupiter")
。這不是Optional.None
,因此它不是nil
。
查找'enum Optional'的定義。它有兩種情況:'無'和...'一些(包裹)'。 –
可能重複[什麼是Swift中的可選值?](http://stackoverflow.com/questions/24003642/what-is-an-optional-value-in-swift) – JAL
@JAL我從一個問題不同,更務實的角度。我認爲這是一個有效的問題,但是我也同意這個鏈接問題的答案隱含地回答了我的問題。 – ff10