c++数组转vector
时间: 2023-10-19 07:31:16 浏览: 49
你可以使用 C++ 标准库中的 `vector` 类来将数组转换为 `vector`。下面是一个示例代码:
```cpp
#include <iostream>
#include <vector>
int main() {
int arr[] = {1, 2, 3, 4, 5};
int size = sizeof(arr) / sizeof(arr[0]);
std::vector<int> vec(arr, arr + size);
for (int i = 0; i vec.size(); i++) {
std::cout << vec[i] << " ";
}
return 0;
}
```
在这个示例中,我们先定义了一个整型数组 `arr`,然后通过计算数组的大小,我们可以得到数组的长度 `size`。接着,我们使用 `vector` 的构造函数将数组转换为 `vector`,传入了两个迭代器参数,分别是数组的起始位置 `arr` 和结束位置 `arr + size`。最后,我们通过遍历 `vector` 的元素并输出来验证转换是否成功。
请注意,这种方法适用于 C++11 及以上的版本,因为在这些版本中,标准库对 `vector` 的构造函数进行了扩展,允许接受迭代器参数。
相关问题
c++ 数组转vector
以下是C++中将普通数组转换为vector的方法:
方法一:使用循环遍历数组并逐个添加到vector中。
```cpp
#include <iostream>
#include <vector>
int main() {
int arr[] = {1, 2, 3, 4, 5};
int size = sizeof(arr) / sizeof(arr[0]);
std::vector<int> vec;
for (int i 0; i < size; i++) {
vec.push_back(arr[i]);
}
// 输出vector中的元素
for (int i = 0; i < vec.size(); i++) {
std::cout << vec[i] << " ";
}
return 0;
}
```
方法二:使用vector的构造函数,将数组的起始地址和结束地址作为参数传递给构造函数。
```cpp
#include <iostream>
#include <vector>
int main() {
int arr[] = {1, 2, 3, 4, 5};
int size = sizeof(arr) / sizeof(arr[0]);
std::vector<int> vec(arr, arr + size);
// 输出vector中的元素
for (int i = 0; i < vec.size(); i++) {
std::cout << vec[i] << " ";
}
return 0;
}
```
c++数组转vector
C++中可以标准库中的vector容器来实数组转换为vector的操作。下面一种常见的方法:
1. 首先,包含>头文件,以便使用vector容器2. 创建一个数组,并初始化数组元素。
3. 使用vector的构造函数,将数组作为参数传递给构造函数,创建新的vector对象下面是示例代码:
```cpp
#include <iostream>
#include <vector>
int main() {
int arr[] = {1, 2, 3, 4, 5}; // 假设有一个整型数组
// 将数组转换为vector
std::vector<int> vec(arr, arr + sizeof(arr) / sizeof(int));
// 打印vector中的元素
for (int i = 0; i < vec.size(); i++) {
std::cout << vec[i] << " ";
}
return 0;
}
```
输出结果为:1 2 3 4 5,即将数组成功转换为了vector。