小编Sam*_*Sam的帖子

编程访谈中的错误暴露?

我找不到本书第2版的勘误表.我的问题涉及下面一段代码中的if语句.

void removeHead (Node ** head) {
  Node * temp;
  if (!(*head)) {
    temp = (*head)->next;
    delete *head;
    *head = temp;
  }
}
Run Code Online (Sandbox Code Playgroud)

所以我理解if语句的要点是检查Node是否为null.但是通过添加额外的"!" 对评估,这不会否定null的错误值吗?将其更改为以下内容是否正确?

if (*head) { ... }
Run Code Online (Sandbox Code Playgroud)

此外,如果有人知道我在哪里可以找到第二版的官方勘误,这将是伟大的.

谢谢,

山姆

c++

4
推荐指数
1
解决办法
841
查看次数

标签 统计

c++ ×1