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

时间:2010-11-03 18:26:04

标签: c++ syntax if-statement

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

if ((ObjPtr = NewObjPtr) != NULL)
{
    ...
}

检查了什么是“!= NULL”?

感谢。

3 个答案:

答案 0 :(得分:11)

这会将NewObjPtr分配给ObjPtr并检查ObjPtr是否为非空。

相当于以下内容:

ObjPtr = NewObjPtr;
if (ObjPtr != NULL) { ... }

答案 1 :(得分:1)

在C ++中,像myVar = 5这样的表达式将返回5。 所以基本上这个语法是检查NewObjPtr是不是NULL。

您可以说将作业的值传递到左侧

答案 2 :(得分:1)

C(C ++)中的每个操作数都返回操作的结果。对于'='运算符,结果是赋值。因此,检查是否为ObjPrt和NewObjPrt的NULL。