最佳答案
std::shared_ptr<Object> p1 = std::make_shared<Object>("foo");
std::shared_ptr<Object> p2(new Object("foo"));
很多 google 和 stackoverflow 的文章都是关于这个的,但是我不能理解为什么 make_shared
比直接使用 shared_ptr
效率更高。
有没有人可以一步一步地解释我所创建的对象和操作的顺序,这样我就能够理解 make_shared
是如何有效的。我已经给出了一个例子以供参考。