>>470
判定と異常の位置が離れてしまって見難くならないか。 
どれとどれが対応してるのか探すのがまず大変そうだ。
途中のreturnがいやならフラグはどうだ。
もしくはエラーだけ関数分けるか。
void hoge()
{
 if(IsOk()) {
  //処理
 }
}
bool IsOk()
{
 bool isOk = true;
 if( ) {
  //エラー処理
  isOk = false;
 }
 中略
 if( ) {
  //エラー処理
  isOk = false;
 }
 return isOk;
}