すべてのポインターの削除を処理するため、std::vector だけで boost::ptr_vector を使用しています。しかし、私がするとき:
ptr_vector<SoftLabelRandomTreeFunctor> functors;
functors.resize(number_of_functors);
SoftLabelRandomTreeFunctorデフォルトのコンストラクターがないと文句を言います。ただし、 * a自体のサイズではなく、 * number_of_functorsa へのポインターのサイズに合わせて十分に大きくする必要があるという印象を受けました。SoftLabelRandomTreeFunctornumber_of_functorsSoftLabelRandomTreeFunctor