如何将vector<string>转变为vector<int>
时间: 2023-08-10 08:05:40 浏览: 192
c++中Stringstream的用法: int->string string->int 实现数据类型的转变
要将一个 `vector<string>` 转换为 `vector<int>`,可以使用 `std::transform` 算法和一个 lambda 函数,如下所示:
```c++
#include <vector>
#include <string>
#include <algorithm>
int main()
{
std::vector<std::string> strVec = {"1", "2", "3", "4", "5"};
std::vector<int> intVec;
std::transform(strVec.begin(), strVec.end(), std::back_inserter(intVec), [](const std::string& str) {
return std::stoi(str);
});
return 0;
}
```
在上面的代码中,我们先定义了一个 `std::vector<std::string>` 变量 `strVec`,其中包含了一些字符串表示的整数。然后我们定义了一个空的 `std::vector<int>` 变量 `intVec`,用于存放转换后的整数。接着使用 `std::transform` 算法,将 `strVec` 中的每个元素都转换为整数,并将其插入到 `intVec` 中。转换的过程使用了一个 lambda 函数,它将一个字符串转换为整数。最终,`intVec` 中存放的就是 `strVec` 中对应的整数了。
阅读全文