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

弗兰塔

您好,我是从c到c ++的,我一直想知道为什么std :: vector可以按值传递。

我认为按值传递动态分配的数组是不可能的,因为那样只会复制指针。

如果向量类的内部是相同的指针,那么如何复制向量。它必须以某种方式知道如何将其重构为另一个对象。

kb

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

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将std :: vector传递给数组引用

来自分类Dev

为什么按值传递的数组上的std :: size不起作用?

来自分类Dev

动态std数组的大小

来自分类Dev

std :: vector数组的大小

来自分类Dev

std :: vector数组的大小

来自分类Dev

将原始数组传递到std :: vector的最快方法

来自分类Dev

如何将r值std :: vector传递给函数?

来自分类Dev

将std :: vector <std :: string>传递为C样式字符串的数组(char **)

来自分类Dev

std :: vector的std :: thread后代

来自分类Dev

来自std :: vector <std :: uint32_t>数组中原始RGB值的CBitmap

来自分类Dev

使用std :: vector :: iterator更改存储在std :: vector中的值?

来自分类Dev

C ++ 11 std ::数组vs静态数组vs std :: vector

来自分类Dev

对于类中动态调整大小的数组,std :: vector是否优于堆数组?

来自分类Dev

std :: vector :: insert是否按定义保留?

来自分类Dev

为什么不能按值将右值std :: stringstream传递给函数?

来自分类Dev

将std :: vector <std :: vector <std :: string >>转换为std :: vector <std :: vector <double >>

来自分类Dev

std :: vector vs std :: array vs普通数组

来自分类Dev

为什么C ++与动态数组的乘法比std :: vector版本更好地工作

来自分类Dev

将字节数组作为std :: vector <char>从Node.js传递到C ++插件

来自分类Dev

std :: vector的std :: vector的比较函数

来自分类Dev

std :: vector <int>到std :: vector <enum>

来自分类Dev

std :: vector的std :: vector的比较函数

来自分类Dev

具有动态数组的std :: max

来自分类Dev

通过 Ctypes 将 std:vector 从 C++ 传递到 Python:获取无意义的值

来自分类Dev

std :: vector <std :: array <T,N >>或std :: array <std :: vector <T>,N>类型的数组如何存储在内存中?

来自分类Dev

按值返回std :: string是否安全?

来自分类Dev

(vhdl)std_logic_vector值

来自分类Dev

用std :: vector <mutex *>调用std :: lock()

来自分类Dev

合并std :: sets到std :: vector

Related 相关文章

  1. 1

    将std :: vector传递给数组引用

  2. 2

    为什么按值传递的数组上的std :: size不起作用?

  3. 3

    动态std数组的大小

  4. 4

    std :: vector数组的大小

  5. 5

    std :: vector数组的大小

  6. 6

    将原始数组传递到std :: vector的最快方法

  7. 7

    如何将r值std :: vector传递给函数?

  8. 8

    将std :: vector <std :: string>传递为C样式字符串的数组(char **)

  9. 9

    std :: vector的std :: thread后代

  10. 10

    来自std :: vector <std :: uint32_t>数组中原始RGB值的CBitmap

  11. 11

    使用std :: vector :: iterator更改存储在std :: vector中的值?

  12. 12

    C ++ 11 std ::数组vs静态数组vs std :: vector

  13. 13

    对于类中动态调整大小的数组,std :: vector是否优于堆数组?

  14. 14

    std :: vector :: insert是否按定义保留?

  15. 15

    为什么不能按值将右值std :: stringstream传递给函数?

  16. 16

    将std :: vector <std :: vector <std :: string >>转换为std :: vector <std :: vector <double >>

  17. 17

    std :: vector vs std :: array vs普通数组

  18. 18

    为什么C ++与动态数组的乘法比std :: vector版本更好地工作

  19. 19

    将字节数组作为std :: vector <char>从Node.js传递到C ++插件

  20. 20

    std :: vector的std :: vector的比较函数

  21. 21

    std :: vector <int>到std :: vector <enum>

  22. 22

    std :: vector的std :: vector的比较函数

  23. 23

    具有动态数组的std :: max

  24. 24

    通过 Ctypes 将 std:vector 从 C++ 传递到 Python:获取无意义的值

  25. 25

    std :: vector <std :: array <T,N >>或std :: array <std :: vector <T>,N>类型的数组如何存储在内存中?

  26. 26

    按值返回std :: string是否安全?

  27. 27

    (vhdl)std_logic_vector值

  28. 28

    用std :: vector <mutex *>调用std :: lock()

  29. 29

    合并std :: sets到std :: vector

热门标签

归档