Join Container Elements into a String
Learn to join container elements into a string.
We'll cover the following...
Sometimes, there is no algorithm in the library to accomplish a task at hand. We can use iterators, with the same techniques as the algorithms
library, to easily write one.
For example, we often need to join elements from a container, with separators, into a string. One common solution is to use a simple for()
loop:
for(auto v : c) cout << v << ', ';
The problem with this otherwise simple solution is that it leaves a
vector<string> greek{ "alpha", "beta", "gamma","delta", "epsilon" };for(auto v : greek) cout << v << ", ";cout << '\n';
Output:
alpha, beta, gamma, delta, epsilon,
This may be fine in a testing environment, but in any production system, that trailing comma is unacceptable.
The ranges::views
library has a join()
function, but it ...