私はクラスを持っています:
class X {
  vector<shared_ptr<T>> v_;
 public:
  vector<shared_ptr<const T>> getTs() { return v_; }
};
のタイプvectorがあります。何らかの理由で、このベクトルを返すメソッドを公開する必要があります。ただし、ベクトルのコンテンツを変更したくありません。また、ポイントされているオブジェクトも変更されません。だから私はのを返す必要があります。shared_ptrTvectorshared_ptr<const T>
私の質問は、これを達成するための効率的な方法はありますか?単純に返すと機能しますが、ベクトルを再構築する必要があり、コストがかかります。
ありがとう。