例6-1 タートルクラス
この例は StartingPoint ディレクトリ以下の ErrorExample.sln ソリューションに含まれる Turtle.cs ファイルの7行目以降に相当します。
例6-2 タートルの動作シミュレーション
この例は StartingPoint ディレクトリ以下の ErrorExample.sln ソリューションに含まれる Turtle.cs ファイルの63行目以降に相当します。
例6-3 回転(Rotate)と走行(Drive)のシミュレーション
この例は StartingPoint ディレクトリ以下の ErrorExample.sln ソリューションに含まれる Turtle.cs ファイルの96行目以降に相当します。
例6-4 タートルのテスト
この例は StartingPoint ディレクトリ以下の ErrorExample.sln ソリューションに含まれる Program.cs ファイルの11行目以降に相当します。
例6-5 範囲チェック
この例は SilentRangeChecking ディレクトリ以下の ErrorExample.sln ソリューションに含まれる Turtle.cs ファイルの7行目以降に相当します。
例6-6 返り値によってエラーを表現する
この例は IncompleteReturnCode ディレクトリ以下の ErrorExample.sln ソリューションに含まれる Turtle.cs ファイルの101行目以降に相当します。
例6-7 失敗を検出し、何か処理を実行する
この例は IncompleteReturnCode ディレクトリ以下の ErrorExample.sln ソリューションに含まれる Turtle.cs ファイルの92行目以降に相当します。
例6-8 責任のたらい回し
この例は BuckPassing ディレクトリ以下の ErrorExample.sln ソリューションに含まれる Turtle.cs ファイルの63行目以降に相当します。
例6-9 列挙型でエラーを明示する
この例は EnumErrorCode ディレクトリ以下の ErrorExample.sln ソリューションに含まれる Turtle.cs ファイルの64行目以降に相当します。
例6-10 エラー処理
この例は EnumErrorCode ディレクトリ以下の ErrorExample.sln ソリューションに含まれる Program.cs ファイルの11行目以降に相当します。
例6-11 例外によるエラーの通知
この例は ThrowException ディレクトリ以下の ErrorExample.sln ソリューションに含まれる Turtle.cs ファイルの92行目以降に相当します。
例6-12 責任のたらい回しはもう要らない
この例は ThrowException ディレクトリ以下の ErrorExample.sln ソリューションに含まれる Turtle.cs ファイルの63行目以降に相当します。
例6-13 Main 関数はもはやエラーを明示的にチェックしない
この例は ThrowException ディレクトリ以下の ErrorExample.sln ソリューションに含まれる Program.cs ファイルの11行目以降に相当します。
例6-14 例外の処理
この例は CatchException ディレクトリ以下の ErrorExample.sln ソリューションに含まれる Program.cs ファイルの11行目以降に相当します。
例6-15 役に立たない場所に置かれたcatch ブロック
この例は WrongCatch ディレクトリ以下の ErrorExample.sln ソリューションに含まれる Program.cs ファイルの60行目以降に相当します。
例6-16 正しい順序で例外をキャッチする
この例は MultipleCatches ディレクトリ以下の ErrorExample.sln ソリューションに含まれる Program.cs ファイルの59行目以降に相当します。
例6-17 例外の再スロー
この例は Rethrow ディレクトリ以下の ErrorExample.sln ソリューションに含まれる Turtle.cs ファイルの65行目以降に相当します。
例6-18 ある例外を別の例外でラップする
この例は Wrapping ディレクトリ以下の ErrorExample.sln ソリューションに含まれる Turtle.cs ファイルの65行目以降に相当します。
例6-19 InnerException を報告
この例は Wrapping ディレクトリ以下の ErrorExample.sln ソリューションに含まれる Program.cs ファイルの59行目以降に相当します。
例6-20 finally ブロックが実行されるタイミングを確認
この例は Finally ディレクトリ以下の ErrorExample.sln ソリューションに含まれる Turtle.cs ファイルの104行目以降に相当します。
例6-21 引数が不正な場合に例外をスローする
この例は ArgumentException ディレクトリ以下の ErrorExample.sln ソリューションに含まれる Turtle.cs ファイルの63行目以降に相当します。
例6-22 期待される例外のテスト
この例は ArgumentException ディレクトリ以下の ErrorExample.sln ソリューションに含まれる Program.cs ファイルの21行目以降に相当します。
例6-23 カスタム例外
この例は CustomException ディレクトリ以下の ErrorExample.sln ソリューションに含まれる TurtleException.cs ファイルの7行目以降に相当します。