C++怎么给矢量赋值
时间: 2024-08-27 16:03:13 浏览: 43
在C++中,矢量(vector)是STL(标准模板库)中的一个动态数组容器,可以存储同一类型的元素。给矢量赋值可以通过多种方式进行,这里列举几种常见的方法:
1. 使用赋值运算符:
可以直接使用赋值运算符"="给一个已存在的矢量赋值。
```cpp
std::vector<int> vec1;
std::vector<int> vec2;
// 给vec2赋值,使其与vec1相同
vec2 = vec1;
```
2. 使用assign函数:
`assign`函数允许你给矢量分配新的值,并且可以指定赋值的数量。
```cpp
std::vector<int> vec;
// 给vec赋值,使其包含10个值为5的元素
vec.assign(10, 5);
```
3. 使用初始化列表:
C++11引入了列表初始化,可以直接用花括号初始化一个矢量。
```cpp
std::vector<int> vec = {1, 2, 3, 4, 5};
```
4. 使用copy函数或者copy算法:
可以通过copy函数或者标准算法中的copy来复制另一个容器的元素到矢量中。
```cpp
std::vector<int> source = {1, 2, 3, 4, 5};
std::vector<int> dest;
// 使用copy算法,将source的元素复制到dest中
std::copy(source.begin(), source.end(), std::back_inserter(dest));
```
5. 使用迭代器范围赋值:
你也可以使用迭代器指定范围来进行赋值操作。
```cpp
std::vector<int> vec;
std::vector<int> otherVec = {1, 2, 3, 4, 5};
// 使用迭代器范围赋值
vec.assign(otherVec.begin(), otherVec.end());
```