我已经创建了一个自定义类来实现std :: vector
我的类有前向迭代器支持。我想知道如何实现vector.insert方法,允许我在向量内的任何位置插入一个元素。
我不能使用allocator,但是我想知道插入方法是否可以用迭代器完成,如果可能的话,怎么办呢?
答案 0 :(得分:0)
要实现insert
,您需要移动/复制插入点后面的所有元素一个元素(如果内部存储空间不够大,可能会分配新内存并移动所有成员),然后将新元素插入"孔"你刚才做的。
请注意,这(当然)会使现有的迭代器失效。