self operator+(difference_type n) const
Iterator movement operator.
Return another iterator by moving this iterator forward by n elements.
When we talk about iterator movement, we think the container is a uni-directional range, represented by [begin, end), and this is true no matter we are using iterators or reverse iterators.
When an iterator is moved closer to "begin", we say it is moved forward, otherwise we say it is moved backward.