Std :: Vectors-复制与创建参考

时间:2019-03-01 22:55:50

标签: c++ stdvector

我对C ++有点陌生,并且主要来自Python,我对此声明感到困惑:

std::vector<int> b = a;

这会创建b作为向量a的副本(具有相同内容的新对象)还是对其的引用?即如果随后对b进行了更改,例如

b.append(1);

该更改是否也会反映在a中(就像ab引用同一个对象时一样)?

1 个答案:

答案 0 :(得分:2)

std::vector<int> b = a;
     

这会创建b作为向量a的副本(具有相同内容的新对象)还是对其的引用?

b 创建为新的 vector 作为副本,因此b.append(1);不会更改 a