至于title,可以vec.end()
作为position参数传递吗?即,是的行为
std::vector<int> vec;
vec.insert(vec.end(), 0);
定义明确?
是的,它定义明确。假设向量为空,则begin()
等于end()
。效果是它在迭代器之前插入元素的副本。
§ 表 100 — 序列容器要求(除了容器)
|------------------------------------------------------------------------------|
|a.insert(p,t) | iterator Requires:T shall be CopyInsertable into X. For |
| | vector and deque, T shall also be CopyAssignable.|
| | Effects: Inserts a copy of t before p. |
-------------------------------------------------------------------------------|
是的,传递给插入函数的迭代器给出了插入新元素的位置。因此,插入 atend()
会使元素成为容器中的最后一个元素。