Nói chung, không nhất thiết phải. Khi bạn gán một véc tơ cho nhau, điều kiện bài viết là cả hai mảng sẽ chứa tương đương đối tượng khi kết thúc thao tác.
Nếu capacity
của vector đích là đủ, hoạt động có thể đạt được bằng cách gọi các nhà điều hành phân trên bộ min(v1.size(), v2.size())
yếu tố, và sau đó, hoặc huỷ phần còn lại của các yếu tố nếu vector nơi tổ chức nhiều yếu tố, hoặc người khác sao chép-xây dựng các yếu tố bổ sung ở cuối. Trong trường hợp này không có phát hành bộ nhớ hoặc phân bổ sẽ được thực hiện.
Nếu véc tơ đích không có đủ dung lượng, thì nó sẽ tạo bộ đệm mới có đủ dung lượng và sao chép các phần tử trong bộ đệm mới từ vectơ nguồn. Sau đó nó sẽ trao đổi bộ đệm cũ và mới, phá hủy tất cả các đối tượng cũ và giải phóng bộ đệm cũ. Trong trường hợp này, các đối tượng cũ bị bị phá hủy và bộ nhớ cũ được giải phóng, nhưng đây chỉ là một trường hợp.
Nguồn
2012-05-10 11:59:08
Có nó được giải thoát. – tuxuday