Khi tiêu đề yêu cầu.Tại sao push_back hoặc push_front vô hiệu hóa trình lặp của deque?
Sự hiểu biết của tôi về một deque là nó phân bổ "khối". Tôi không thấy cách phân bổ thêm không gian làm mất hiệu lực các trình vòng lặp, và nếu có điều gì, người ta sẽ nghĩ rằng các trình vòng lặp của deque sẽ có nhiều sự đảm bảo hơn là các vectơ, không ít hơn.
iirc, việc thực hiện deque của gcc giữ một mảng các con trỏ tới các khối đó ... Nếu mảng cần phải được phân bổ lại thì các trình vòng lặp có thể trở nên không hợp lệ. Có lẽ đó là lý do? Tôi không chắc ... Điều đó ít nhất là giải thích tại sao việc chèn thêm vào một trong hai đầu lặp lại không hợp lệ, nhưng không phải là các tham chiếu/con trỏ tới các phần tử. –