深いブロックは脱出できませんが、こんなのどうでしょう。
do { … // なんらかのエラー if (error) { break; } … } while (false);
for 文の中とか深いブロック抜けられませんが、そもそも goto 文が使えない状況( PHP とか)では重宝することもあります(トランザクションに関する処理を書くときとか)。
ただ、これをやると周りの技術者から「これは何の意味があるん?」と問い詰められること必死です。はい、今です。
2009/08/21 追記: while のスペルミスを修正しました。 yomogi さん、ありがとうございます。
Comments
whilte
…これだけが気になったのですが、それは置いといて
いいと思いますよ?
自分はコンストラクタでセットアップをして、値を返せない場合
errorCode変数をにエラーコードを入力して
普段はBOOLで取得して真偽を判定し
intで取得するときは詳細エラーコードを取得できるようにしているのですが…
そんな時、シンプルで見やすいいいプログラムだと思います。
まあ、クラスのコンストラクタでセットアップするのではなく、
Initializeとか、Setup関数で整えたほうがいいのでしょうが…
呼び出し忘れとかがよくあるので、自分はコンストラクタでできることはやっちゃいます
特にメモリ関連は
> yomogi さん
ぬぁ、 typo ですかッ、恥ずかしい…
教えていただいてありがとうございます(^^
自分もなるべく初期化はコンストラクタでやりたい方です。
そのクラスの利用に必要な準備はコンストラクタで良いような気がしますよ。
本当はコンストラクタだったら例外が飛ばせるので使いたいのですが、
組み込みでは無理ですし、なにより例外のうまい使い方がわからないので errorCode 派です(^^;
Contributions