我编写了一段简单的代码来测试make_shared for C++11。std::shared_ptr<MyClass> x = std::make_shared<MyClass>(MyClass());
调用默认构造函数,调用移动构造函数。这在一开始似乎很好,因为move构造函数不会创建副本。但是,如果我注释掉MyClass的move构造函数的实现,它将调
使用libc++,在公共部分找到std::shared_ptr::make_shared()静态成员函数。当我已经为std::shared_ptr的专门化定义了类型别名时,这是非常方便的:using P = std::shared_ptr< T >;
auto p = P::make_shared(123); // <=> std::make_shared&l