我有一个大小为 10 的一维数组。我想删除从 5 到 8 的元素。有人可以举例说明如何操作吗?这就是我定义数组的方式,但我不知道如何开始。
#include <iostream>
#include <iomanip>
using namespace std;
int array[10] = {1,2,3,4,5,6,7,8,9,10};
所以,输出应该是 1,2,3,4,5,10。 (索引 0 = 元素 1)
谢谢
数组的替代方法是使用 vector .在这种情况下,您可以:
#include <vector>
// create vector for integers
std::vector<int> v;
// set values from 1 to 10
for (int i=1; i<=10; i++)
v.push_back(i);
// erase from 5 to 8
v.erase (v.begin()+5, v.begin()+9);
顺便说一句,如果您的编译器支持 C++11,您可以将 vector 初始化为:
std::vector<int> v = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
我是一名优秀的程序员,十分优秀!