gpt4 book ai didi

c++ - std::vector 与按值传递的动态数组

转载 作者:行者123 更新时间:2023-12-01 13:40:39 24 4
gpt4 key购买 nike

你好,我从 c 转到 c++,我一直想知道为什么 std::vector 可以按值传递。
我认为按值传递动态分配的数组是不可能的,因为这只会复制指针。
如果 vector 类内部是相同的指针,那么如何复制 vector 。它必须以某种方式知道如何将其重建为另一个对象。

最佳答案

std::vector知道有多少元素存储在动态内存中。分配该大小的新缓冲区并将内容复制到该新内存中是一件简单的事情。所有这些都发生在复制构造函数中。

关于c++ - std::vector 与按值传递的动态数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62922725/

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