Варианты Some и None в Rust
У типа ровно два варианта. Заполненный носит значение в круглых скобках после имени, пустой не несет полей и означает отсутствие данных. Оба имени пишут через двоеточие после имени типа, как у своего перечисления.
Число можно обернуть в заполненный вариант, а для пустого иногда указывают тип явно, чтобы компилятор знал, какого вида данных ждать:
let full = Some(12);
let empty: Option<i32> = None;
println!("{:?}", full);
println!("{:?}", empty);
На экране с отладочным выводом видно заполненное число и пустой вариант. Тот же прием работает и с другими типами, если указать их в угловых скобках у имени типа:
let name = Some("ann");
let gap: Option<&str> = None;
println!("{:?}", name);
println!("{:?}", gap);
Запишите в main.rs заполненный
вариант с числом 5 и пустой
вариант типа Option<i32>.
Выведите оба через отладочный формат.
Скажите, сколько вариантов у стандартного перечисления для необязательного значения.
Запишите пустой вариант для Option<&str>
в переменную note и выведите note
через {:?}.