Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
有没有办法移动一个 unique_ptr
unique_ptr<int[]> foo;
成向量?
vector<int> bar;
不,您不能只vector提供一块内存并期望它将其用作数组存储。Avector的存储必须来自使用的分配器vector。
vector
您可以尝试使用分配器噱头以vector某种方式将内存典当。但即使这样也很棘手,因为无论您告诉它的大小如何,它都vector可以分配任意数量的 s。int
int
您可以将 a 的内容移动unique_ptr到数组的元素中。说,如果你有一个vector<unique_ptr<int[]>>. 但是你不能只是把一段记忆塞进一个vector.
unique_ptr
vector<unique_ptr<int[]>>