Option
y Result
Los tipos representan datos opcionales:
fn main() { let numbers = vec![10, 20, 30]; let first: Option<&i8> = numbers.first(); println!("first: {first:?}"); let idx: Result<usize, usize> = numbers.binary_search(&10); println!("idx: {idx:?}"); }
Option
yResult
se usan mucho, no solo en la biblioteca estándar.Option<&T>
no usa espacio adicional en comparación con&T
.Result
es el tipo estándar para implementar la gestión de errores, tal y como veremos el día 3.binary_search
devuelveResult<usize, usize>
.- Si se encuentra,
Result::Ok
contiene el índice donde se halla el elemento. - De lo contrario,
Result::Err
contendrá el índice donde se debe insertar dicho elemento.
- Si se encuentra,