4

彼らは似たようなことをします。

2つを選択する際に考慮すべきことは何ですか?

どのような状況で、どちらかが優先されますか?

4

1 に答える 1

6

std::vector<std::unique_ptr<T>>私はいくつかの理由で好むでしょう:

  1. 型の安全性 - これは でかなりうまく抽象化されていますがboost::ptr_vectorptr_vectorの観点からはまだ実装されていstd::vector<void*>ます。
  2. カスタム デリータの明確なサポート - を使用してカスタム デリータの動作を取得できると思いますがboost::ptr_vectorstd::unique_ptr.
  3. これは標準であり、準拠している C++11 コンパイラによって十分にサポートされています。
于 2013-02-07T21:09:15.897 に答える