c++在vector中插入元素
时间: 2024-10-29 22:18:47 浏览: 42
C++中vector容器使用详细说明
在C++中,你可以使用`std::vector`容器来动态地插入元素。`vector`支持多种插入操作:
1. **`push_back()`**:这是向向量的末尾添加新元素最常用的方法。例如:
```cpp
std::vector<int> vec;
vec.push_back(42); // 在末尾插入整数42
```
2. **`insert()`**:这个函数允许你在任意位置插入元素,需要指定插入的位置以及要插入的元素。例如:
```cpp
vec.insert(vec.begin(), 0); // 在开头插入0
```
或者,
```cpp
vec.insert(vec.begin() + 2, "Hello"); // 在索引2处插入字符串"Hello"
```
3. **`emplace()`**:它会构造新对象并直接插入到容器中,不需要先创建临时对象。例如:
```cpp
vec.emplace_back(); // 在末尾自动构造一个默认值的对象
```
4. **`reserve()`** 和 `resize()`**:在插入大量元素前,可以预分配空间以提高效率,避免频繁的内存扩展。比如:
```cpp
vec.reserve(10); // 预留10个空位
vec.resize(5, 'a'); // 扩大至大小为5,并将所有元素设为字符'a'
```
注意,插入后记得更新迭代器或引用,因为插入改变了容器的内部结构。
阅读全文