1

我有一个关于标准的问题..

所以假设我有管理我的内存分配的池..

我想使用 shared_ptr 并检查了 API ..

正如预期的那样,我看到对于 shared_ptr 我控制指针的分配,我可以给它一个释放函数,完美!

现在我看了STL的讲座,发现maked_shared的内存效率更高(因为它可以在同一个地方分配控制块和ptr)显然我直接去了maked_shared api,才发现make_shared在强迫我仅使用新/删除..所以问题是:

  1. 我对么?只有新/删除?
  2. 如果是这样,为什么?

谢谢!

4

1 回答 1

3

我相信您可以使用std::allocate_sharedwhich 允许您使用自己的分配器。

于 2013-04-07T07:24:16.990 回答