首页 > 解决方案 > 在 C++ 中,“Node”是一个类,“node”是“Node”的实例。为什么“*node = nullptr”是错误的,而“*node = NULL”是正确的?

问题描述

Node* node;    
*node = nullptr;

报错:</p>

error: no viable overloaded '='
       *node = nullptr;

Node* node;    
*node = NULL;

是正确的 ?

标签: c++c++11

解决方案


很可能 aNode可以用 a 构造int。由于 null 被定义为等于 的 int 常量0,因此您错误地调用了节点构造函数并将其分配给节点。

正如 Sid S 所说,node = nullptr是正确的表达方式。


推荐阅读