Rust

Fehlerbehandlung

Result<T, E>, Option<T>, unwrap, expect, ?, benutzerdefinierte Fehler, Fehlerpropagierung

18 Interview-Fragen·
Junior
1

Welcher Rust-Typ stellt einen Wert dar, der vorhanden sein kann oder nicht?

Antwort

Option<T> ist ein Enum, das entweder Some(T) mit einem Wert oder None zur Angabe des Fehlens eines Werts sein kann. Dieser Typ ersetzt die in anderen Sprachen vorhandenen Null-Werte und zwingt den Entwickler, den Fall eines fehlenden Werts explizit zu behandeln, wodurch Null-Pointer-Fehler zur Laufzeit vermieden werden.

2

Welcher Rust-Typ repräsentiert eine Operation, die erfolgreich sein oder mit einem Fehler fehlschlagen kann?

Antwort

Result<T, E> ist ein Enum mit zwei Varianten: Ok(T) für den Erfolg, das den Rückgabewert enthält, und Err(E) für den Fehlschlag, das den Fehler enthält. Dieser Typ erzwingt eine explizite Fehlerbehandlung anstelle von Ausnahmen, wodurch der Code vorhersehbarer und Fehler sichtbarer werden.

3

Was macht die Methode unwrap() bei einem Option<T>?

Antwort

unwrap() gibt den in Some(T) enthaltenen Wert zurück, falls er existiert. Ist das Option None, gerät das Programm in Panik (panic!) und stoppt sofort. Diese Methode ist praktisch zum Prototyping, sollte aber in der Produktion vermieden werden, da sie den None-Fall nicht elegant behandelt.

4

Was ist der Unterschied zwischen unwrap() und expect()?

5

Was macht der ?-Operator in einer Funktion, die Result<T, E> zurückgibt?

+15 Interview-Fragen

Meistere Rust für dein nächstes Interview

Zugang zu allen Fragen, Flashcards, technischen Tests, Code-Review-Übungen und Interview-Simulatoren.

Kostenlos starten