我有一个包含100个元素的Rust中的
Vec
,我需要删除索引在10到30之间的每个元素。一种方法是逐个删除每个元素,如下所示:for i in 10..30 {
vec.remove(i);
}
但这会导致每次删除元素时,剩余的Vec必须向左移动,因此会有一次memcpy。 我如何一次性从Vec中删除一整个范围的项目,以一种只引起一次memcpy的方式?