Gui*_*cot 6

最有可能的是一个Node可以用int.由于null被定义为等于的int常量0,因此您错误地调用了节点构造函数并将其分配给节点.

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


Mat*_*247 6

NULL 很可能是一个旧的宏,继承自C世界,并定义为0.

所以在第二种情况下发生的事情是将数字 0 分配给类型的变量Node.而在第一种情况下,指定了指针(nullptr).编译器确定这是错误的,因为*node它不是指针.这意味着它会抱怨.

它是否会抱怨分配数字0 Node将取决于赋值运算符Node是否已经过载以接受数字.或者是否有一个数字的隐式转换/构造函数Node.