2016-07-05 80 views
1

打印對象的收益率的描述LLDB使用關鍵字「一些」,在對象的描述(這裏我PO一個可選的字符串)的前面:Xcode控制檯中的「Some」關鍵字是什麼意思?

(lldb) po someString 
Optional<String> 
- Some: "Hello Jupiter" 

這是什麼關鍵字的含義;爲什麼在那裏?

+5

查找'enum Optional'的定義。它有兩種情況:'無'和...'一些(包裹)'。 –

+0

可能重複[什麼是Swift中的可選值?](http://stackoverflow.com/questions/24003642/what-is-an-optional-value-in-swift) – JAL

+0

@JAL我從一個問題不同,更務實的角度。我認爲這是一個有效的問題,但是我也同意這個鏈接問題的答案隱含地回答了我的問題。 – ff10

回答

1

Optionalenum與兩種情況下,none,並some(wrapped)

enum Optional<Wrapped> { 
    case Some(Wrapped) 
    case None 
} 

正如可以看到的,Optional要麼具有Some的值,與相關聯的值(數值Optional包裹物),或NoneOptional.None實際上是nil的含義。

在這種情況下,調試器告訴你someStringOptional<String>(又名String?),其值爲Optional.Some("Hello Jupiter")。這不是Optional.None,因此它不是nil

相關問題