c++ insert的用法
时间: 2024-10-06 13:04:10 浏览: 36
C++string中的insert()插入函数详解
在C++中,`insert()`是一个标准库算法,它用于向容器(如vector、list、set等)中添加元素。这个函数的基本语法如下:
```cpp
iterator insert( iterator position, const T& value );
```
这里,`position`是你想要插入新元素的位置,可以是一个已有的迭代器,`value`则是你想要插入的具体元素。
举个例子,如果你有一个整数vector `numbers`,你可以这样插入一个元素:
```cpp
std::vector<int> numbers;
numbers.insert(numbers.begin(), 4); // 在开头插入数字4
```
或者,如果你想在特定位置插入,例如在索引2处:
```cpp
numbers.insert(numbers.begin() + 2, 7); // 在索引2插入数字7
```
对于关联容器(如map或set),`insert()`会处理键值对,确保键的唯一性:
```cpp
std::map<std::string, int> myMap;
myMap.insert({"apple", 5}); // 插入键值对"apple" => 5
```
注意,`insert()`不会移动已经存在的元素,而是直接将新元素插入到指定位置。如果容器中有同名的元素并且有自定义的比较器(比如set),可能会导致错误。
阅读全文