Index: [Article Count Order] [Thread]

Date:  Fri, 31 Aug 2001 23:06:45 +0900
From:  Daiki Ueno <ueno@....org>
Subject:  [XP-jp:02453] Re: バグ・パターン
To:  extremeprogramming-jp@....jp
Message-Id:  <m2ofowmih6.fsf@....org>
In-Reply-To:  <20010830220958.F42B.ANC04864@....COM> (ANC04864@....COM's message of "Thu, 30 Aug 2001 22:15:20 +0900")
References:  <20010830161302K.hiranabe@....jp> <200108300755.QAA15368@....jp> <20010830220958.F42B.ANC04864@....COM>
X-Mail-Count: 02453

上野と申します。

>>>>> In [extremeprogramming-jp : No.02421] 
>>>>>	ANC04864@....COM wrote:

> > C言語で
> > 
> >   if (bRet = TRUE) 
> > 
> > に、時間を費やした事があります。

> これは、よくやりましたし、未だにやりますね。f^^;

> 出所忘れましたが、TRUEとか定数を先にかくことを推奨している
> のを読んだことがあります。そうするとコンパイルでチェックで
> きるという内容でした。
> ちょっとやってみたんだけど、なんだかしっくりこなくて、止め
> ました。f^^;

> 例:
> if (TRUE = bRet)  // コンパイル時にエラーになる

この書き方を採用したコードはよく見掛けるのですが、上記のような背景を知っ
たのは最近です。やはり個人的にはしっくり来ませんでした。

このような場合、やはりコンパイラにチェックさせるのが良いと思います。
たとえば gcc なら -Wparentheses で警告が出ます。
-- 
Daiki Ueno