アカウント名:
パスワード:
処理が1行だからといって、if文で格好つけるのはやめましょう。
戻り値がboolだから条件判断を省略するとか、整数を左に記述するとか、イミフなのも禁止してほしい。
> 戻り値がboolだから条件判断を省略するとか
いやむしろそれは正しい気がする。逆に条件句で整数が入るケースが気色悪い。
if(1) みたいな。
K&Rから入ったせいか(i != 0)を(i)と書かないと冗長に見えて落ち着かないんです。
if (!p) {}
↑は多用するけど、
if (p == NULL) {}
↑はあまり好きじゃないです。
他人が書いてるのは見て見ぬふりをするけど、自分で書くときは前者のスタイルで書きます。
私なら何を判定しているのか自分以外(未来の自分含む)の人にもすぐ理解してもらうために省略せず後者の書き方をします。
私には!pのほうがp==NULLよりわかりやすいです
私の場合、 if の中身は論理値にしておく方が好みで、ポインタそのものは論理値じゃないから NULL と比較した結果とすることで論理値にする方が好み。よって後者。
整数を左にするのは==と=を間違えた時に有用だからいいんじゃないかな
片方が定数でないと意味が無いので、これで救われるケースはそれほど多くない上に、最近のコンパイラなら警告を出してくれるので、どれほど意味があるか疑問。
片方が数値でかつ、(意識してわざわざ)数値を左にしたけど、==を=に間違うケースだけ救われる。結構レアケースでないかな
if (b) {}オーケー、省略はよくない。条件判断を追加しようif (b==true) {}だがちょっと待ってほしい。b==trueの型はboolではないか。省略せず条件判断を行うべきだ。if ((b==true)==true) {}いやいや、(b==true)==trueの型もboolだ。条件判断を省略するのはよくない。if (((b==true)==true)==true) {}(…以下無限に続く)# マジな話「boolだから条件判断を省略」ってまったく意味わからないんですけど。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
吾輩はリファレンスである。名前はまだ無い -- perlの中の人
格好つけずに括弧つけろよ (スコア:5, おもしろおかしい)
処理が1行だからといって、if文で格好つけるのはやめましょう。
Re:格好つけずに括弧つけろよ (スコア:0)
戻り値がboolだから条件判断を省略するとか、整数を左に記述するとか、イミフなのも禁止してほしい。
Re:格好つけずに括弧つけろよ (スコア:1)
> 戻り値がboolだから条件判断を省略するとか
いやむしろそれは正しい気がする。
逆に条件句で整数が入るケースが気色悪い。
if(1) みたいな。
Re:格好つけずに括弧つけろよ (スコア:2)
K&Rから入ったせいか(i != 0)を(i)と書かないと冗長に見えて落ち着かないんです。
Re:格好つけずに括弧つけろよ (スコア:1)
↑は多用するけど、
↑はあまり好きじゃないです。
他人が書いてるのは見て見ぬふりをするけど、自分で書くときは前者のスタイルで書きます。
Re:格好つけずに括弧つけろよ (スコア:1)
私なら何を判定しているのか自分以外(未来の自分含む)の人にもすぐ理解してもらうために省略せず後者の書き方をします。
Re: (スコア:0)
私には!pのほうがp==NULLよりわかりやすいです
Re: (スコア:0)
私の場合、 if の中身は論理値にしておく方が好みで、ポインタそのものは論理値じゃないから NULL と比較した結果とすることで論理値にする方が好み。よって後者。
Re: (スコア:0)
整数を左にするのは==と=を間違えた時に有用だからいいんじゃないかな
Re: (スコア:0)
片方が定数でないと意味が無いので、これで救われるケースはそれほど多くない上に、
最近のコンパイラなら警告を出してくれるので、どれほど意味があるか疑問。
Re: (スコア:0)
片方が数値でかつ、(意識してわざわざ)数値を左にしたけど、==を=に間違うケースだけ救われる。
結構レアケースでないかな
Re: (スコア:0)
if (b) {
}
オーケー、省略はよくない。条件判断を追加しよう
if (b==true) {
}
だがちょっと待ってほしい。b==trueの型はboolではないか。省略せず条件判断を行うべきだ。
if ((b==true)==true) {
}
いやいや、(b==true)==trueの型もboolだ。条件判断を省略するのはよくない。
if (((b==true)==true)==true) {
}
(…以下無限に続く)
# マジな話「boolだから条件判断を省略」ってまったく意味わからないんですけど。