Rust

Gestione degli errori

Result<T, E>, Option<T>, unwrap, expect, ?, errori personalizzati, propagazione degli errori

18 domande da colloquio·
Junior
1

Quale tipo Rust rappresenta un valore che può essere presente o assente?

Risposta

Option<T> è un enum che può essere Some(T) contenente un valore, oppure None che indica l'assenza di un valore. Questo tipo sostituisce i valori null presenti in altri linguaggi e costringe lo sviluppatore a gestire esplicitamente il caso in cui il valore è assente, evitando così gli errori di puntatore null a runtime.

2

Quale tipo Rust rappresenta un'operazione che può avere successo o fallire con un errore?

Risposta

Result<T, E> è un enum con due varianti: Ok(T) per il successo, che contiene il valore di ritorno, e Err(E) per il fallimento, che contiene l'errore. Questo tipo obbliga a gestire gli errori in modo esplicito anziché usare le eccezioni, rendendo il codice più prevedibile e gli errori più visibili.

3

Cosa fa il metodo unwrap() su un Option<T>?

Risposta

unwrap() restituisce il valore contenuto in Some(T) se esiste. Se l'Option è None, il programma va in panic (panic!) e si arresta immediatamente. Questo metodo è comodo per la prototipazione ma andrebbe evitato in produzione perché non gestisce in modo elegante il caso None.

4

Qual è la differenza tra unwrap() ed expect()?

5

Cosa fa l'operatore ? in una funzione che restituisce Result<T, E>?

+15 domande da colloquio

Padroneggia Rust per il tuo prossimo colloquio

Accedi a tutte le domande, flashcards, test tecnici, esercizi di code review e simulatori di colloquio.

Inizia gratis