【发布时间】:2017-05-09 07:39:38
【问题描述】:
我不知道自己做错了什么,但推送功能有问题。你能帮帮我吗?
#include<iostream>
#include<memory>
using namespace std;
struct lista {
int value;
unique_ptr<lista>next;
lista(int value):value(value), next(nullptr){}
};
void push(int x, unique_ptr<lista> &h) {
unique_ptr<lista>alok_pam_x = make_unique<lista>(x);
if (alok_pam_x!= nullptr)
{
(alok_pam_x->next) = h;
h = alok_pam_x;
}
}
我有错误:
严重性代码描述项目文件行抑制状态 错误 C2280 'std::unique_ptr> &std::unique_ptr<_ty>>::operator =(const std::unique_ptr<_ty>> &)':试图 引用已删除的函数
严重性代码描述项目文件行抑制状态错误 (活动)函数“std::unique_ptr<_ty _dx>::operator=(const std::unique_ptr<_ty _dx>::_Myt &) [with _Ty=lista, _Dx=std::default_delete]”(在“c:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\memory”的第 1436 行声明)不能 引用——是一个被删除的函数
【问题讨论】:
标签: c++ visual-c++ c++14 unique-ptr