Rust

エラー処理

Result<T, E>、Option<T>、unwrap、expect、?、カスタムエラー、エラーの伝播

18 面接問題·
Junior
1

値が存在する場合と存在しない場合を表す Rust の型はどれですか?

回答

Option<T> は、値を保持する Some(T) か、値の不在を示す None のいずれかになる enum です。この型は他の言語に存在する null 値を置き換え、値が存在しない場合を明示的に処理することを開発者に強制するため、実行時の null ポインタエラーを防ぎます。

2

成功するか、エラーで失敗するかのどちらかになる操作を表す Rust の型はどれですか?

回答

Result<T, E> は 2 つのバリアントを持つ enum です。成功時には戻り値を保持する Ok(T)、失敗時にはエラーを保持する Err(E) です。この型は例外を使うのではなく明示的なエラー処理を強制するため、コードがより予測可能になり、エラーがより見えやすくなります。

3

unwrap() メソッドは Option<T> に対して何をしますか?

回答

unwrap() は値が存在する場合に Some(T) に含まれる値を返します。Option が None の場合、プログラムはパニック(panic!)を起こし即座に停止します。このメソッドはプロトタイピングには便利ですが、None のケースを適切に処理しないため本番環境では避けるべきです。

4

unwrap() と expect() の違いは何ですか?

5

Result<T, E> を返す関数の中で ? 演算子は何をしますか?

+15 面接問題

次の面接に向けてRustをマスター

すべての問題、flashcards、技術テスト、コードレビュー演習、面接シミュレーターにアクセス。

無料で始める