私はすでにこの投稿をチェックしましたCan I use if (pointer) instead of if (pointer != NULL)? およびネット上のいくつかの他の投稿。
しかし、2 つのステートメントの違いを述べているわけではありません。
問題: cpp コードで cpplint.py を実行すると、NULL のポインターをチェックする問題が見つかりました。シンプルな方法でチェックすることを好みました
if(pointer) //statement1
しかし、cpplintは次のようにチェックする必要があると言います
if(pointer != NULL) //statement2
だから私はただ知りたいのですが、statement1よりstatement2の利点はありますか? statement1が問題を引き起こすシナリオはありますか?
作業:私の知る限り、両方のステートメントの作業に違いはありません。コーディングスタイルを変更しただけです。
私は like statement1を使用することを好みます。
- シンプルで読みやすい
- 比較で
=
等しい( )よりも誤って( )が抜けているテンションがない==
しかし、cpplint はこれを問題として提起しているので、私が見逃した利点があるかもしれません。
注: Java もstatement1 をサポートしていません。