W3cubDocs

/C++

std::unordered_set::begin, std::unordered_set::cbegin

iterator begin();
(since C++11)
const_iterator begin() const;
(since C++11)
const_iterator cbegin() const;
(since C++11)

Returns an iterator to the first element of the container.

If the container is empty, the returned iterator will be equal to end().

Parameters

(none).

Return value

Iterator to the first element.

Exceptions

noexcept specification:
noexcept

Complexity

Constant.

Example

#include <iostream>
#include <unordered_set>
 
struct Point { double x, y; };
 
int main() {
    Point pts[3] = { {1, 0}, {2, 0}, {3, 0} };
 
    //points is a set containing the addresses of points
    std::unordered_set<Point *> points = { pts, pts + 1, pts + 2 };
 
    //Change each y-coordinate of (i, 0) from 0 into i^2 and print the point
    for(auto iter = points.begin(); iter != points.end(); ++iter){
        (*iter)->y = ((*iter)->x) * ((*iter)->x); //iter is a pointer-to-Point*
        std::cout << "(" << (*iter)->x << ", " << (*iter)->y << ") ";
    }
    std::cout << '\n';
 
    //Now using the range-based for loop, we increase each y-coordinate by 10
    for(Point * i : points) {
        i->y += 10;
        std::cout << "(" << i->x << ", " << i->y << ") ";
    }
}

Possible output:

(3, 9) (1, 1) (2, 4) 
(3, 19) (1, 11) (2, 14)

See also

returns an iterator to the end
(public member function)

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
http://en.cppreference.com/w/cpp/container/unordered_set/begin