[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 2chのread.cgiへ]
Update time : 05/09 21:41 / Filesize : 194 KB / Number-of Response : 878
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

スレ立てるまでもない質問はここで 97刷



331 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 23:21:22 ]
条件分岐について質問です。
例えば
class hoge{ bool flag; int x ; int y };
hoge a , b ,c;があるとして
flagがtrueのものがひとつのときはそれを、複数のときは距離が近いものを取得したい場合
if( a.flag && !b.flag && !c.flag ) return a;
else if( !a.flag && b.flag && !c.flag) return b;
else if( !a.flag && !b.flag && c.flag) return c;
else if( a.flag && b.flag && !c.flag){
 if( distance(a.x, a.y) < distance(b.x, b.y)
  return a;
 return b;
}
....
else if( a.flag && b.flag && c.flag){
 if( distance(a.x,a.y) < distance(b.x,b.y) ){
  if( distance(a.x,a.y) < distance(c.x,c.y)
   return a;
return c;
 }else if(.................
}
...........
こんな感じにたった3つでもとんでもなく条件分岐が増えてしまうのですが、
もう少し簡潔な分岐の仕方があったら教えて頂きたいです。







[ 続きを読む ] / [ 携帯版 ]

全部読む 前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<194KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef