我有一堂课,其中一个字段是std::unique_ptr<SomeClass>
。构造父类对象时,此字段最初未设置。我需要做:
field_(nullptr)
还是该字段会自动初始化为默认值,并且该字段为null?
答案 0 :(得分:3)
是的,您不需要。 default constructor of std::unique_ptr
将构造不拥有任何内容的std::unique_ptr
。效果与显式初始化为field_(nullptr)
相同。
构造一个不拥有任何内容的
std::unique_ptr
。值初始化存储的指针和存储的删除器。