转换向量<int>到一个字符串 [英] Convert a vector&lt;int&gt; to a string

查看:24
本文介绍了转换向量<int>到一个字符串的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个 vector 容器,其中包含整数(例如 {1,2,3,4}),我想转换为

形式的字符串

"1,2,3,4"

在 C++ 中最干净的方法是什么?在 Python 中,我会这样做:

<预><代码>>>>数组 = [1,2,3,4]>>>",".join(map(str,array))'1,2,3,4'

解决方案

绝对没有 Python 优雅,但没有什么比 C++ 中的 Python 优雅.

你可以使用 stringstream ...

#include //...std::stringstream ss;for(size_t i = 0; i < v.size(); ++i){如果(我!= 0)ss<<",";ss<

您也可以使用 std::for_each 代替.

I have a vector<int> container that has integers (e.g. {1,2,3,4}) and I would like to convert to a string of the form

"1,2,3,4"

What is the cleanest way to do that in C++? In Python this is how I would do it:

>>> array = [1,2,3,4]
>>> ",".join(map(str,array))
'1,2,3,4'

解决方案

Definitely not as elegant as Python, but nothing quite is as elegant as Python in C++.

You could use a stringstream ...

#include <sstream>
//...

std::stringstream ss;
for(size_t i = 0; i < v.size(); ++i)
{
  if(i != 0)
    ss << ",";
  ss << v[i];
}
std::string s = ss.str();

You could also make use of std::for_each instead.

这篇关于转换向量<int>到一个字符串的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆