VB6のプロシージャ内のコーディングについてですが、一般的にどちらのコーディンク方法を使用されていますか。
それとも全く違う方法を使用されてますでしょうか。
御意見をお願いいたします。

方法1
Function A() as Integer
if 例外判定 then
例外処理
Exit Function
End If
通常処理
End Function
説明
例外が発生したら例外処理をしてすぐにプロシージャを抜ける。
例外処理が多くなると途中でプロシージャを抜ける部分が多くなってしまう。


方法2
Function A() as Integer
if 例外判定 then
例外処理
Else
通常処理
End If
End Function
説明
例外が発生しても最後までプロシージャを抜けない。
必ず同じ場所でプロシージャを終了する。

このQ&Aに関連する最新のQ&A

A 回答 (3件)

私は方法1ですね。



正常系の流れが読みやすい。
例外の処理の範囲が明確。
インテンドが浅い。

方法2は

インテンド深かい。
正常系の流れが読みにくい。
例外の場合も最後まで読まなければならないので読みにくい。(Goto文で飛ばした方がまし)
    • good
    • 0
この回答へのお礼

ありがとうございます。
たしかにおっしゃるとおりです。
後の作業性を考えるとどちらがよいかよくわかりました。

お礼日時:2005/06/05 05:53

1か2かといえば2です。


私はgotoを普通に使います。gotoを使うのはよくない!とか初めてのVBのような本に書いてあるかもしれませんが、使い方次第だと思います。

Function A() as Integer

if 例外判定 then
goto ErrExit
end if

if 例外判定2 then
goto ErrExit
end if

Exit function
ErrExit:
例外処理
End Function
    • good
    • 0
この回答へのお礼

ありがとうございました。
例外処理をまとめて記述するという方法もあるんですね。

お礼日時:2005/06/05 05:51

個人的には、なるべく方法2を使うようにしています。


また、例外処理、通常処理は別のプロシージャにします(数行程度で済むものならそうしない時もありますが)。

一つのプロシージャ内に、複数抜けるところがあるというのが、あまり好きではないので(見栄えの問題かも知れませんけど)。
    • good
    • 0
この回答へのお礼

ありがとうございました。
最近、この方が美しいのかな…。
なんて思いつつありました。

お礼日時:2005/06/05 05:50

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング