小编Ari*_*ris的帖子

C++ 中的容器与智能指针

std::vector在 std::containers (或std::array)和指向数组的智能指针之间进行选择时如何决定

我知道容器是内存管理的对象。它们是异常安全的,不会有任何内存泄漏,它们还提供了内存管理的功能(push.back等),而智能指针也是不会泄漏内存的指针,因为它们在不再需要时会删除它们(就像超出范围时的 unique_ptr 一样)。在容器中,每次创建它们时可能都会产生开销。

我的问题是我如何决定使用哪种方法以及为什么。

std::vector <unsigned char>myArray(3 * outputImageHight * outputImageWidth);

std::unique_ptr<unsigned char[]>myArray(new unsigned char[3 * outputImageHight * outputImageWidth]);
Run Code Online (Sandbox Code Playgroud)

c++ containers smart-pointers

4
推荐指数
1
解决办法
1813
查看次数

标签 统计

c++ ×1

containers ×1

smart-pointers ×1