您需要声明和初始化unique_ptr
. 它必须指向一个结构。
struct Node {
int key;
};
unique_ptr<Node> head;
head = make_unique<Node>(new Node);
错误:
Node::Node(Node &&): невозможно преобразовать аргумент 1 из "_Ty" в "const Node &
您需要声明和初始化unique_ptr
. 它必须指向一个结构。
struct Node {
int key;
};
unique_ptr<Node> head;
head = make_unique<Node>(new Node);
错误:
Node::Node(Node &&): невозможно преобразовать аргумент 1 из "_Ty" в "const Node &
make_unique
通过将其参数传递给构造函数来创建一个实例Node
。这个函数的重点不是new Node
手动调用它。因此,Node *
它不应该被传输。此外,head = make_unique
这不是初始化,而是赋值。初始化如下所示: