最終更新日時(UTC):
が更新

履歴 編集

function
<ranges>

std::ranges::filter_view::iterator::コンストラクタ(C++20)

iterator() requires default_initializable<iterator_t<V>> = default;    // (1)

constexpr iterator(filter_view& parent, iterator_t<V> current);        // (2)

概要

filter_view::iteratorオブジェクトを構築する。

効果

#include <ranges>
#include <vector>

int main() {
  using std::ranges::filter_view;
  using std::ranges::iterator_t;

  std::vector<int> vec = {0, 1, 2, 3, 4, 5};

  filter_view fv{vec, [](int x){ return x % 2 == 0; }};

  iterator_t<filter_view> i(fv, vec.begin());

  std::cout << *i << `\n`;
  i++;
  std::cout << *i << `\n`;
  i++;
  std::cout << *i << `\n`;
}

出力

0
2
4

バージョン

言語

  • C++20

処理系

参照