gpt4 book ai didi

c++ - std::vector 是否可以简单复制,为什么?

转载 作者:太空宇宙 更新时间:2023-11-04 15:12:01 24 4
gpt4 key购买 nike

我遇到了 std::vector<T> 的问题, 其中T是一种内置类型,表示 vector 不可平凡复制。

我在想这样对不对,正在找原因。

最佳答案

正式地,一个std::vector<T> (对于任何 T )不是 trivially copyable因为它的复制构造函数不是 trivial ,如果只是因为它是用户提供的(而不是隐式定义的)。

实际上,复制一个 vector 不仅仅是对其数据成员进行浅拷贝——它需要在堆上分配一个内存缓冲区,并从另一个 vector 的堆分配缓冲区复制其内容。

关于c++ - std::vector 是否可以简单复制,为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54255571/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com