关于 std::vector 扩容,正确的是?

C++

  1. A.每次 push_back 都重新分配内存,因此是 O(n)
  2. B.容量不足时倍数扩容搬移元素,摊还 O(1),迭代器失效
  3. C.vector 容量固定不可变,超出即抛 std::length_error 异常
  4. D.扩容后原迭代器仍然有效,因为元素地址不变