Site Tools


wiki:hpp-iterator

Table of Contents

<iterator>

<iterator> provides iterator utilities: std::advance, std::distance, std::next, std::prev, iterator type traits like std::iterator_traits, and iterator adapters like std::back_inserter, std::insert_iterator.

Use iterator adapters to turn algorithms into list-building operations: std::copy(..., std::back_inserter(vec)) appends to a vector.

Example

This example uses std::back_inserter to copy elements into a vector, and std::distance and std::next to navigate iterators.

// compile: g++ -std=c++11 -o iteratorexample iteratorexample.cpp
// run: ./iteratorexample
// description: iterator utilities and inserters
 
#include <iterator>
#include <algorithm>
#include <vector>
#include <iostream>
 
int main() {
    std::vector<int> src = {1, 2, 3};
    std::vector<int> dst;
 
    std::copy(src.begin(), src.end(), std::back_inserter(dst));
 
    std::cout << "distance: " << std::distance(dst.begin(), dst.end()) << "\n";
    std::cout << "next iter value: " << *std::next(dst.begin()) << "\n";
 
    return 0;
}
wiki/hpp-iterator.md · Last modified: by 127.0.0.1