需要帮助来理解C++语法

cpp*_*ner 2 c++ syntax if-statement

我对C++比较陌生.这是一个我无法理解的if语句.

if ((ObjPtr = NewObjPtr) != NULL)
{
    ...
}
Run Code Online (Sandbox Code Playgroud)

检查了什么是"!= NULL"?

谢谢.

vit*_*aut 11

这种分配NewObjPtrObjPtr,如果检查ObjPtr是不为空.

它相当于以下内容:

ObjPtr = NewObjPtr;
if (ObjPtr != NULL) { ... }
Run Code Online (Sandbox Code Playgroud)

  • 备注:问题的代码是代码味道.它应该以简单/清晰的方式编写. (2认同)