unique_ptr or vector?

后端 未结 5 730
孤城傲影
孤城傲影 2020-12-16 14:23

If you don\'t need dynamic growth and don\'t know the size of the buffer at compile time, when should unique_ptr be used instead of vector<

5条回答
  •  不思量自难忘°
    2020-12-16 14:56

    There is no performance loss in using std::vector vs. std::unique_ptr. The alternatives are not exactly equivalent though, since the vector could be grown and the pointer cannot (this can be and advantage or a disadvantage, did the vector grow by mistake?)

    There are other differences, like the fact that the values will be initialized in the std::vector, but they won't be if you new the array (unless you use value-initialization...).

    At the end of the day, I personally would opt for std::vector<>, but I still code in C++03 without std::unique_ptr.

提交回复
热议问题