10
docs for Option
, Option
, Some<T>
ve None
türevleri içeren bir numaradır.Neden Seçeneklerin Bazıları ve Hiçbiri varyantlarının kalifiye olmaları gerekmiyor?
Neden onları değerlendirmeksizin Some
ve None
başvuruyorsunuz?
let x = Option::Some(5);
match x {
Some(a) => println!("Got {}", a),
None => println!("Got None"),
}
Ancak bu derlenmeyecektir:
Örneğin, bu iyi çalışır
enum Foo<T> {
Bar(T),
Baz,
}
let x = Foo::Bar(5);
match x {
Bar(a) => println!("Got {}", a),
Baz => println!("Got Baz"),
}
derleyici hata otomatik olarak sokulur unresolved enum variant, struct or const `Bar`
Mükemmel, teşekkürler. – krixon
Bilmek için çok yararlı, teşekkürler! –