街中で見かけて「グッときた人」の思い出

PHPの勉強をしています。
今、基礎的な内容の本とより実践的な内容の本、コードサンプルが満載の本の
計3冊で勉強しておるのですが、
たまたまなのかわかりませんが、この三冊の中ででてくるコードを見てみると、
if文の中に否定演算子、例えば

IF(!A || !B) {
  A、もしくはBがfalse だったのが反転してTrueになった場合の処理
}else {
  A、Bどちらともtrueだったのが反転してfalseになった場合の処理
}

といった条件文に否定演算子を含めたコードサンプルがほとんどです。
。。。。三冊ともこの調子なので
もしかしてPHPのコーティング作法なのかな?と思いましたが
ネットで検索してもそれらしい情報は見当たらず......

自分が何がわからないのか
それ自体よくわかってないのかもしれませんが
IF文を使う際、条件に否定演算子を使うべきときってのがあるんだと思います。
となると、その時を判断する基準などがあるのでしょうか?
初心者なのでなにか重大な思い違いをしてるのではないかと思ってます。
なにか気づくことがあれば教えてください。

A 回答 (1件)

> IF文を使う際、条件に否定演算子を使うべきときってのがあるんだと



ないですよ。否定演算子を使ったほうがわかりやすいときに、素直に使うだけです。

> IF(!A || !B){
こいつだけ見れば、 if ( A && B ){ ... としたほうがシンプルですが、具体的な条件が否定で書いたほうが自然なのであれば、問題ないです。


なので、サンプルコードに否定演算子が多いというのは、わざとなのかもしれません(※)し、あるいは何も考えてないかもしれませんが、著者に訊かなければ真実は不明かと。

※たとえば、処理Aが成功したときリターンコード0を返す場合など否定で判定させたりします。

この回答への補足

なるほど、
して、
「否定で書いたほうが自然」

というのはどんな状況でしょうか?
具体例を教えてくれると非常に助かります。

私はコードを読んだり書いたりした経験が絶対的に不足しているため
具体的にイメージしづらいのです(汗)
いくつか例をあげてもらえれば非常に助かります。

補足日時:2013/07/01 22:28
    • good
    • 0
この回答へのお礼

いや、やはり答えは自分で探してみようと思います。
おかげさまで疑問解決の糸口を見つけらました。

ありがとうございました

お礼日時:2013/07/01 22:54

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報