![]() |
1
1
你误解了向量如何管理它们的记忆。 无论您使用的是简单赋值还是移动,都不会得到指向内存中相同数据的两个不同向量。在分配情况下,删除目标中的任何数据,然后复制源中的数据并将其添加到目标中。在移动情况下,删除目标中的任何数据,然后从源中删除源中的数据并将其添加到目标中。 要回答您的问题“如何将a移动到b(以避免浪费复制时间),同时能够将a和b都用作另一个的引用?”-您不应该将a移动到b(因此没有时间复制数据),然后将b定义为对a的引用或指向a的指针:
b\U ref和b\U ptr都允许访问a中的数据,而无需制作任何副本。 |
![]() |
rookie · 检查函数模板的所有参数包参数是否属于int 1 年前 |
![]() |
ivaigult · -W转换和隐式字符串到布尔类型转换 1 年前 |
![]() |
rainer · 后台插入程序的初始化 1 年前 |
![]() |
Community wiki · 以理智、安全和高效的方式复制文件 1 年前 |
|
Shefali Kanaujia · 对C中向量的向量进行排序++ 1 年前 |
|
Ma Joonyoung · 粗粒度和细粒度链表的时间比较 1 年前 |