(C++) Create a new vector by mapping elements of another vector
- Define the new vector as empty.
- Define a (lambda) function to use to map each element of the given vector.
- Use
std::transform
andstd::back_inserter
to fill in the new vector.
Example:
std::vector<int> givenVector{1,2,3,4,5};
// Step 1
std::vector<std::string> ret{};
ret.reserve(givenVector.size());
// Step 2
auto const stringOfTwice = [](int val) { return std::to_string(val * 2); }
// Step 3
std::transform(givenVector.begin(), givenVector.end(),
std::back_inserter(ret), stringOfTwice);
Reference:
Written on February 27, 2022