我是否需要在构造函数中显式初始化std :: unique_ptr?

时间:2019-12-11 01:57:51

标签: c++ constructor unique-ptr

我有一堂课,其中一个字段是std::unique_ptr<SomeClass>。构造父类对象时,此字段最初未设置。我需要做:

field_(nullptr)

还是该字段会自动初始化为默认值,并且该字段为null?

1 个答案:

答案 0 :(得分:3)

是的,您不需要。 default constructor of std::unique_ptr将构造不拥有任何内容的std::unique_ptr。效果与显式初始化为field_(nullptr)相同。

  

构造一个不拥有任何内容的std::unique_ptr。值初始化存储的指针和存储的删除器。