【发布时间】:2021-07-05 18:47:48
【问题描述】:
使用 unique_ptr 创建对象时出现错误,如下所示 错误:从 Account * 到非标量类型 std::unique_ptr 的错误转换
std::unique_ptr <Account> acc_ptr = new Account(100);
如果我使用如下原始指针,则没有错误
Account *acc_ptr = new Account(100);
为什么会这样?
【问题讨论】:
-
相关(/重复?):stackoverflow.com/questions/11367933/…。如果第一个可以编译,那么
void foo(std::unique_ptr<int>){} int x; foo(&x);也可以编译,那会很糟糕。
标签: c++ unique-ptr