boost :: algorithm :: join的一个很好的例子

Dan*_*ook 112 c++ string boost join

我最近想使用boost :: algorithm :: join但我找不到任何用法示例,我不想花很多时间学习Boost Range库只是为了使用这个函数.

任何人都可以提供一个如何在字符串容器上使用连接的好例子吗?谢谢.

Tri*_*ner 215

#include <boost/algorithm/string/join.hpp>
#include <vector>
#include <iostream>

int main()
{
    std::vector<std::string> list;
    list.push_back("Hello");
    list.push_back("World!");

    std::string joined = boost::algorithm::join(list, ", ");
    std::cout << joined << std::endl;
}
Run Code Online (Sandbox Code Playgroud)

输出:

Hello, World!
Run Code Online (Sandbox Code Playgroud)

  • 它可以支持自定义类型吗?例如,类'A`有一个方法`ToString`,它返回一个`string`值.我可以通过在每个元素上调用`ToString`来使用`join`来连接`vector <A>`吗? (4认同)

Kea*_*eks 44

std::vector<std::string> MyStrings;
MyStrings.push_back("Hello");
MyStrings.push_back("World");
std::string result = boost::algorithm::join(MyStrings, ",");

std::cout << result; // prints "Hello,World"
Run Code Online (Sandbox Code Playgroud)

  • 这个答案比旧的答案显示更少的努力,并没有提供任何附加价值.它为什么还存在? (4认同)