2
如果我有兩個不同的性狀:選項<T>其中T可以是兩個不同的特質?
trait Foo {}
trait Bar {}
是它然後可能具有其可以是它們中的一個選項(或無,當然),如:
,並讓它們兩個工作?
如果我有兩個不同的性狀:選項<T>其中T可以是兩個不同的特質?
trait Foo {}
trait Bar {}
是它然後可能具有其可以是它們中的一個選項(或無,當然),如:
,並讓它們兩個工作?
Option<T>
沒有什麼特別的;它只是這一點,再加上一些方便的方法,有點文件:
pub enum Option<T> {
Some(T),
None,
}
牢記這一點:這是枚舉所有的方式。你可以創建自己的枚舉。它肯定是明確的,但要學會欣賞那是一件好事。
pub enum FooOrBar {
Foo(~Foo),
Bar(~Bar),
}
可以使這的Option<T>
。或者,如果你能從中獲得更好的語義:
pub enum Something {
Foozy(~Foo),
Bark(~Bar),
ADifferentVariant,
}
很好用!一路下來。我必須承認我以前從來沒有使用帶有枚舉的語言,所以我仍然在爲它們打分。 –