• Class / Function / Type

      std::
    • Header file

      <>
    • Other / All

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

    履歴 編集

    function
    <ranges>

    std::ranges::推論補助

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

    概要

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

    #include <ranges>
    #include <vector>
    #include <concepts>
    
    int main() {
      std::vector<int> vec = {1, 2, 3, 4};
    
      std::ranges::as_const_view v1{vec};
    
      static_assert(std::same_as<
        decltype(v1),
        std::ranges::as_const_view<std::ranges::ref_view<std::vector<int>>>
      >);
    
      std::ranges::as_const_view v2{std::vector<int>{1, 2}};
    
      static_assert(std::same_as<
        decltype(v2),
        std::ranges::as_const_view<std::ranges::owning_view<std::vector<int>>>
      >);
    }
    

    出力

    バージョン

    言語

    • C++23

    処理系

    参照