if(NULL == DoSomething())...... 而不是if(DoSomething == NULL) ......  ???

解决方案 »

  1.   

    对不起,写错了。应该是:
    if(NULL == DoSomething())...... 而不是if(DoSomething() == NULL) ......  ???
      

  2.   

    考虑以下代码:
    if (p == NULL)
      // ...

    if (NULL == p)
      // ...
    如果将“==”误写作“=”,那么第一段代码仍然可以编译通过,而且if后面的内容就永远不会运行。
    将NULL写在前面就是为了避免这种笔误造成的错误。
      

  3.   

    因为NULL = DoSomething 是如法编译通过的语法错误语句,
    所以说 NULL == DoSomething 可以避免将NULL = DoSomething写成了
    NULL = DoSomething,既DoSomething = NULL(赋值而不是判断了)