所以我碰到了一个函数的这段代码

void remove(Node * & p, const int & key){
  if(!p){
    throw out_of_range("The key you're looking for can't be found\n");
  }
  if(p == nullptr){
    return;
  }

我不太了解!pp == nullptr之间的区别。根据我对C++的了解,这两个语句似乎总是等效的。不是吗我错了吗?

需要澄清。

谢谢!

最佳答案

实际上两者是相同的。您可以使用两者来检查指针是否为空。



希望这可以帮助 :)

关于c++ - C++- “!pointer”和 “pointer == nullptr”之间的区别?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/60365127/

10-11 22:21
查看更多