unique_ptr:一个接一个地调用make_unique两次

时间:2018-11-15 03:57:13

标签: pointers unique

1 std::unique_ptr< Test[] > upt(std::make_unique< Test[] >(2));

  

//这里没有泄漏,因为它会重置,这会取消分配。

3 upt = (std::make_unique< Test[] >(1));

在上面的代码段中,在调用第3行时,调用了两次Test的析构函数,并为大小为1的数组分配了内存。

那么,谁叫重置?是make_unique吗? 另外,我能否获得make_uniquemake_shared的详细实现。

0 个答案:

没有答案