在 C 中,当使用 std::vector 时,可能会有需要通过索引删除元素的实例。
考虑这样一个场景,您有一个整数向量并且需要删除第 n 个元素。
要删除位置 n 处的单个元素,只需使用 std::erase 和迭代器到所需的位置位置。操作方法如下:
std::vector<int> vec; vec.push_back(6); vec.push_back(-17); vec.push_back(12); // Deletes the second element (vec[1]) vec.erase(std::next(vec.begin()));
std::next(vec.begin()) 返回一个指向第二个元素的迭代器,然后将其删除。
如果你想删除多个连续元素,使用带有一系列迭代器的擦除:
// Deletes the second through third elements (vec[1], vec[2]) vec.erase(std::next(vec.begin(), 1), std::next(vec.begin(), 3));
以上是如何通过 C 中的索引从 std::vector 中删除元素?的详细内容。更多信息请关注PHP中文网其他相关文章!