下面是一个示例代码,展示了如何编写一个自定义的std::vector插入函数:
#include
#include
template
void customInsert(std::vector& vec, size_t index, const T& value) {
// 在指定索引位置插入元素
vec.insert(vec.begin() + index, value);
}
int main() {
std::vector myVec = {1, 2, 3, 4, 5};
std::cout << "Before inserting: ";
for (const auto& elem : myVec) {
std::cout << elem << " ";
}
std::cout << std::endl;
// 使用自定义插入函数插入元素
customInsert(myVec, 2, 100);
std::cout << "After inserting: ";
for (const auto& elem : myVec) {
std::cout << elem << " ";
}
std::cout << std::endl;
return 0;
}
在这个示例中,我们定义了一个名为customInsert的自定义插入函数。它接受一个std::vector的引用、要插入的索引和要插入的值作为参数。函数内部使用std::vector的insert函数,在指定的索引位置插入给定的值。
在主函数中,我们创建了一个包含整数的std::vector,并在插入之前和之后打印出向量的内容。然后,我们使用自定义的插入函数在索引2的位置插入值100,并再次打印出向量的内容。
输出结果应该是:
Before inserting: 1 2 3 4 5
After inserting: 1 2 100 3 4 5
这表明插入函数成功地将值100插入到了索引2的位置。