小编Dav*_*eno的帖子

是否可以更改 C++ 中向量的开始位置以清除其前 n 个元素?

假设我有一个整数向量 [1,2,3,4,5,6,7]。据我所知,向量有一个内存地址@v,然后如果我们想访问一个元素i,我们只需要执行@v+i*size_of_element。也许我错了, std::vector 是以不同的方式实现的。

如果我想删除前 4 个元素并最终得到 [5,6,7],我是否只需要更新 @v 并清除元素,在这种情况下它们只是整数,所以我假设它将是 O(1)。

我的假设是否错误,有什么方法可以使用向量在 C++ 中实现此目的,即更新向量的起始地址以“清除”前 n 个元素?

如果没有,是否可以使用 std::list ?

c++ list vector

0
推荐指数
1
解决办法
1891
查看次数

标签 统计

c++ ×1

list ×1

vector ×1