我已经检查了这篇文章我可以使用 if (pointer) 而不是 if (pointer != NULL) 吗?以及网上的一些其他帖子。
但这并没有说明两个陈述之间的任何区别。
问题:当我在我的 cpp 代码上运行 cpplint.py 时,我发现了检查指针是否为 NULL 的问题。我更喜欢使用简单的检查
if(pointer) //statement1
但是cpplint说你应该检查一下
if(pointer != NULL) //statement2
所以我只想知道,statement2比statement1有什么好处吗?在某些情况下statement1可能会产生问题吗?
工作:据我所知,两种语句的工作没有区别。它只是编码风格的改变。
我更喜欢使用 like statement1,因为
- 它简单易读
=
在比较中没有错失( )而不是相等(==
)的张力
但是 cpplint 将此作为问题提出,那么我可能会错过一些好处。
注意: Java 也不支持statement1。