- iterator[meta header]
- std[meta namespace]
- common_iterator[meta class]
- function[meta id-type]
- cpp20[meta cpp]
template<class I2, class S2>
requires convertible_to<const I2&, I> && convertible_to<const S2&, S> &&
assignable_from<I&, const I2&> && assignable_from<S&, const S2&>
common_iterator& operator=(const common_iterator<I2, S2>& x);
- assignable_from[link /reference/concepts/assignable_from.md]
- convertible_to[link /reference/concepts/convertible_to.md]
common_iterator
オブジェクトをコピー代入する。
x.v_.
valueless_by_exception
() == false
であること。
I, S
の値のどちらかをvariant<I, S>
型のメンバ変数v_
に保持しており、i = x.v_.
index()
として、次のどちらか
i == v_.index()
がtrue
である場合 :get<i>(v_) = get<i>(x.v_)
- それ以外の場合 :
v_.
emplace
<i>(get<i>(x.v_))
*this
- C++20
- Clang: ??
- GCC: 10.1 [mark verified]
- Visual C++: 2019 Update 9 [mark verified]