У меня есть Tree
, и я хочу создать новое пустое дерево. Моя первая мысль:Как создать новое пустое дерево
struct Tree<T> {
key: T,
l: Option<Box<Tree<T>>>,
r: Option<Box<Tree<T>>>,
}
impl<T: Ord> Tree<T> {
/// Creates an empty tree
pub fn new() -> Self {
Tree {
key: None, // error of mismatch type
l: None,
r: None,
}
}
}
Я получаю ошибку Error: mismatched types [E0308]
это проблема типа T
, не соответствующего типа None
?
'None' есть ** не ** типа. Это * значение * типа 'Option'. – Shepmaster