Option
我們已看過 Option<T>
的某些用法,包括儲存型別為 T
的值,或不儲存任何東西。舉例來說,String::find
會傳回 Option<usize>
。
Speaker Notes
This slide should take about 10 minutes.
Option
is widely used, not just in the standard library.unwrap
會在Option
或恐慌中傳回值。expect
也類似,但會收到錯誤訊息。- 您可以讓程式在 None 發生恐慌,但不能「因錯而」忘記檢查 None。
- 如果是要設計某些臨時程式,通常會在各處
unwrap
/expect
,但實際運作的程式碼一般會以較好的方式處理None
。
- 所謂區位最佳化,代表
Option<T>
的記憶體大小通常與T
相同。