c++中容器元素都是副本。 就是说,vector中添加元素的时候,是将元素值复制到容器里。就是说容器中存放的是原始元素的副本。被复制的原始值与新容器中的元素各不相关,此后,容器内元素值发生变化时,被复制的原值不会受到影响,反之亦然。 可以写个程序验证下。例如; vector<string> vs; string s="nihao"; vs.push_back(s); vs[0]=""; 会发现即使修改了向量中的元素,但是原来的s是没有变化的。 同理插入也是一样的。 这个概念要牢记 容器元素都是副本。不仅对vector如此,对其他容器也是一样的。
c++中容器元素都是副本
最新推荐文章于 2023-11-16 19:31:08 发布
6278

被折叠的 条评论
为什么被折叠?



