Rust

Tratamento de erros

Result<T, E>, Option<T>, unwrap, expect, ?, erros personalizados, propagação de erros

18 perguntas de entrevista·
Junior
1

Qual tipo do Rust representa um valor que pode estar presente ou ausente?

Resposta

Option<T> é um enum que pode ser Some(T) contendo um valor, ou None indicando a ausência de valor. Esse tipo substitui os valores null presentes em outras linguagens e obriga o desenvolvedor a tratar explicitamente o caso em que o valor está ausente, evitando assim erros de ponteiro null em tempo de execução.

2

Qual tipo do Rust representa uma operação que pode ter sucesso ou falhar com um erro?

Resposta

Result<T, E> é um enum com duas variantes: Ok(T) para sucesso, contendo o valor de retorno, e Err(E) para falha, contendo o erro. Esse tipo obriga a tratar os erros de forma explícita em vez de usar exceções, tornando o código mais previsível e os erros mais visíveis.

3

O que o método unwrap() faz em um Option<T>?

Resposta

unwrap() retorna o valor contido em Some(T) se ele existir. Se o Option for None, o programa entra em pânico (panic!) e para imediatamente. Esse método é conveniente para prototipagem, mas deve ser evitado em produção, pois não trata o caso None de forma elegante.

4

Qual é a diferença entre unwrap() e expect()?

5

O que o operador ? faz em uma função que retorna Result<T, E>?

+15 perguntas de entrevista

Domine Rust para sua proxima entrevista

Acesse todas as perguntas, flashcards, testes tecnicos, exercicios de code review e simuladores de entrevista.

Comece gratis