最終更新日時: 2025年06月04日 12時16分17秒 (JST)
Akira Takahashi が更新

履歴 編集

function
<ranges>

# std::ranges::chunk_by_view::推論補助(C++23)

    namespace std::ranges {
      template<class R, class Pred>
      chunk_by_view(R&&, Pred) -> chunk_by_view<views::all_t<R>, Pred>;
    }

## 概要

`chunk_by_view`クラステンプレートの型推論補助。

## 例

    #include <ranges>
    #include <vector>
    #include <functional>
    #include <type_traits>

    int main() {
      std::vector<int> v = {1, 2, 2, 3, 0, 4, 5, 2};

      // chunk_by_viewの型を明示的に指定する必要がない
      std::ranges::chunk_by_view cv{v, std::ranges::less_equal{}};

      // 推論された型を確認
      static_assert(std::same_as<
        decltype(cv),
        std::ranges::chunk_by_view<
          std::ranges::ref_view<std::vector<int>>,
          std::ranges::less_equal
        >
      >);
    }

### 出力

## バージョン

### 言語

- C++23

### 処理系

- Clang: 17 ✅
- GCC: 14.0 ✅
- Visual C++: 2022 Update 3 ✅