我在 std::vector 上使用 boost::ptr_vector 因为它将为我处理所有指针的删除。但是,当我这样做时:
ptr_vector<SoftLabelRandomTreeFunctor> functors;
functors.resize(number_of_functors);
它抱怨SoftLabelRandomTreeFunctor
没有默认构造函数。但是,我的印象是它只需要调整大小以适应number_of_functors
* 指向 a 的指针的大小SoftLabelRandomTreeFunctor
,而不是number_of_functors
* aSoftLabelRandomTreeFunctor
本身的大小?