iter_swap(ranges::adjacent_view::iterator)
来自cppreference.com
                    
                                        
                    < cpp | ranges | adjacent view | iterator
                    
                                                            
                    |   friend constexpr void iter_swap( const /*iterator*/& x, const /*iterator*/& y )   noexcept( /*see below*/ )  | 
(C++23 起) | |
交换两个底层迭代器数组 (以 current_ 表示) 指向的对象。
等价于:
for (std::size_t i{}; i != N; ++i) { std::ranges::iter_swap(x.current_[i], y.current_[i]); }
如果在交换前 x.current_ 中的迭代器都不等于 y.current_ 中的迭代器,则行为未定义。
此函数对通常无限定或有限定查找不可见,而只能在 adjacent_view::iterator<Const> 为参数的关联类时由实参依赖查找找到。
参数
| x, y | - | 迭代器 | 
返回值
(无)
异常
noexcept 说明:  
noexcept(std::ranges::iter_swap(declval<ranges::iterator_t<Base>>(),
declval<ranges::iterator_t<Base>>()))
declval<ranges::iterator_t<Base>>()))
参阅
|    (C++20)  | 
  交换两个可解引用对象所引用的值  (定制点对象)  | 
|    交换两个迭代器所指向的元素   (函数模板)  |