std::counted_iterator<I>::operator=
template< class I2 >
requires std::assignable_from<I&, const I2&>
constexpr counted_iterator& operator=( const counted_iterator<I2>& other );
| (начиная с C++20) |
Базовый итератор и длина присваиваются из other.
Параметры
| other | - | адаптер итератора, из которого выполняется присваивание |
Возвращаемое значение
*this
Пример
#include <algorithm>
#include <cassert>
#include <initializer_list>
#include <iterator>
int main()
{
auto a = {3, 1, 4, 1, 5, 9, 2};
std::counted_iterator<std::initializer_list<int>::iterator> p(begin(a), size(a) - 2);
std::counted_iterator<std::initializer_list<int>::iterator> q;
assert(q.count() == 0);
assert(q.count() != p.count());
q = p;
assert(q.count() == p.count());
assert(std::ranges::equal(p, std::default_sentinel, q, std::default_sentinel));
}
См. также
создаёт новый counted_iterator (открытая функция-член) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/iterator/counted_iterator/operator%3D