使用 std::make_shared
函数创建一个 shared_ptr
,这是最推荐的方式,因为它可以提高效率并减少内存泄漏的风险(注意 make_shared括号后面对应的是<>里面的类型)就是说<>里面是什么我们()里面就要是什么
std::shared_ptr<int> sp1 = std::make_shared<int>(10);
使用构造函数,但需要确保传入的指针是动态分配的。(注意我们这个用的是指针)
int* p = new int(10);
std::shared_ptr<int> sp2(p);
二者明显的不同