Tour durch Rust Inhaltsverzeichnis

Fehlbares Main Erneut Betrachtet

Rust-Code mag eine Vielzahl von Darstellungen von Fehlern haben, aber die Standardbibliothek besitzt einen universellen Trait std::error::Error zur Beschreibung von Fehlern.

Mit einem Smart Pointer Box können wir den Typ Box<dyn Error> als gemeinsamen Typ für die Rückgabe von Fehlern verwenden, weil er es uns erlaubt, einen Fehler auf dem Heap nach oben zu propagieren und auf hoher Ebene mit ihm zu interagieren, ohne einen bestimmten Typ kennen zu müssen.

Früh in Tour of Rust haben wir gelernt, dass main einen Fehler zurückgeben kann. Wir können jetzt einen Typ zurückgeben, der in der Lage ist, fast jede Art von Fehler zu beschreiben, die in unserem Programm auftreten könnte, solange die Datenstruktur des Fehlers den gemeinsamen Error-Trait von Rust implementiert.

fn main() -> Result<(), Box<dyn std::error::Error>>