智能指针构造函数:传递“ new”和std :: make _...之间有什么区别?

时间:2019-06-03 12:05:01

标签: c++ c++11 smart-pointers

我想知道这两个声明之间的区别:

  • std::unique_ptr<Foo> pFoo(new Foo());
  • std::unique_ptr<Foo> pFoo = std::make_unique<Foo>();

我听说第二种用法是出于例外安全性考虑,因此首选一种用法?那也正确吗?

0 个答案:

没有答案