- PR -

C# 自作関数の例外処理について

投稿者投稿内容
くんちん
常連さん
会議室デビュー日: 2002/10/07
投稿数: 46
投稿日時: 2005-01-20 22:55
日付のチェックですよね?

jsさんの聞きたい話【例外なら何を返したらいいか?】

私の場合だと、例外ならばthrowします。
私は、例外のエラー内容を知りたいからです。そうしてLOGに出します。

例外エラーをcatch してそれに対して何を返すか?ということなので、単純に結果が欲しいならばそこでreturn時にTrue:False返すだけでよさそうですけどね。。。

というより、例外エラー発生したときに、何を求めるかによっても違うと思います。
菊池
会議室デビュー日: 2004/11/15
投稿数: 19
投稿日時: 2005-01-20 23:52
乗り遅れ気味ですが私の場合、out パラメータで Exceptionを出します。

void Hoge( out Exception e );

オーバライドで Exception をoutしない版を用意して、そっちを使われれば
容赦なく投げます。

void Hoge( ) { Exception e; Hoge( out e ); if( e!=null ) throw e; }

throw にかかるコストが問題だったりする場合には out で受けてくれという
一つの考え方です。
戻り値でのエラーチェックはエラーの表現が一貫しない等の問題が起こりやすい
ですが HogeException はHoge例外と表現が一貫するというメリットもあります。

スキルアップ/キャリアアップ(JOB@IT)