[過去ログ] ふらっと C#,C♯,C#(初心者用) Part154 (1002レス)
前次1-
抽出解除 レス栞

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
505
(2): デフォルトの名無しさん (ブーイモ MMcf-m76R) [sage] 2022/04/18(月) 20:28:51.38 ID:0OwrwjlVM(1/2) AAS
MS自身のコードだと、throw AssertUtil.Unreachable; みたいなのはよくあるよ
Unreachable はプロパティで、UnreachableException みたいなinternalなカスタム例外をnewして返してるだけ
506: 505 (ブーイモ MMcf-m76R) [sage] 2022/04/18(月) 20:39:47.71 ID:0OwrwjlVM(2/2) AAS
一般に、アサーション目的で投げる例外は誤ってキャッチされる可能性の低い型であれば何でもよい
その意味では>>505のようにinternalな例外を定義して使うのが望ましいだろうね
必ずしも>>505の例のようにわざわざプロパティを定義する必要はないけど、あえてそうする理由としては
・いちいち throw new UnreachableException("No way!"); みたいにメッセージ書くのは面倒
・かといって空にすると、チームによっては静的チェックで例外にはメッセージを設定しろとか言われたりして面倒
といったところだろう
507: デフォルトの名無しさん (ワッチョイ 5736-XhrW) [sage] 2022/04/18(月) 20:39:52.66 ID:YFSVkBgS0(6/6) AAS
>>504
504(1): デフォルトの名無しさん (ワッチョイ 9f01-0UVf) [sage] 2022/04/18(月) 20:25:50.85 ID:wKhqv1yX0(1/2) AAS
まあこの手の話はあちらでも挙げられてて結局しっくりくる例外はないってことになってる
外部リンク:stackoverflow.com
MS的には System.Diagnostics.Debug.Fail() 使えやってことなんだろうね
どうしても例外上げるなら自前でLogicErrorExceptionとかを作るのが良いと思う
>>505
ありがとうございます。とても勉強になります。
やはり、例外を使いたいなら自分で作る、という方針で考えたいと思います。
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 1.556s*