【发布时间】:2014-10-14 02:48:39
【问题描述】:
此链接问题询问 make_shared<> 函数和 shared_ptr<> 构造函数是否不同。
What happens when using make_shared
部分答案是make_shared<> 通常会在一次分配中同时为指向对象和智能指针控制块分配内存。 shared_ptr<> 构造函数使用两个分配。
cppreference 声明构造函数“必须”这样做,但没有给出任何理由。
这是为什么?由于某种原因是不可能的吗?还是因为其他原因被标准禁止?
【问题讨论】:
标签: c++ c++11 shared-ptr make-shared