iew "cpp/ranges/view") consisting of the sequence obtained from flattening a view of ranges, with the delimiter in between elements   
(class template)  (range adaptor object)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/ranges/dsc_join_with_view&action=edit)  
[ ranges::stride_view  views::stride  ](/w/cpp/ranges/stride_view "cpp/ranges/stride view") (C++23)  |  a [ ` view ` ](/w/cpp/ranges/view "cpp/ranges/view") consisting of elements of another [ ` view ` ](/w/cpp/ranges/view "cpp/ranges/view") , advancing over N elements at a time   
(class template)  (range adaptor object)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/ranges/dsc_stride_view&action=edit)  
[ ranges::slide_view  views::slide  ](/w/cpp/ranges/slide_view "cpp/ranges/slide view") (C++23)  |  a [ ` view ` ](/w/cpp/ranges/view "cpp/ranges/view") whose M  th  element is a [ ` view ` ](/w/cpp/ranges/view "cpp/ranges/view") over the M  th  through (M + N - 1)  th  elements of another [ ` view ` ](/w/cpp/ranges/view "cpp/ranges/view")   
(class template)  (range adaptor object)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/ranges/dsc_slide_view&action=edit)  
[ ranges::chunk_view  views::chunk  ](/w/cpp/ranges/chunk_view "cpp/ranges/chunk view") (C++23)  |  a range of [ ` view ` s ](/w/cpp/ranges/view "cpp/ranges/view") that are ` N ` -sized non-overlapping successive chunks of the elements of another [ ` view ` ](/w/cpp/ranges/view "cpp/ranges/view")   
(class template)  (range adaptor object)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/ranges/dsc_chunk_view&action=edit)  
[ ranges::chunk_by_view  views::chunk_by  ](/w/cpp/ranges/chunk_by_view "cpp/ranges/chunk by view") (C++23)  |  splits the [ ` view ` ](/w/cpp/ranges/view "cpp/ranges/view") into subranges between each pair of adjacent elements for which the given predicate returns  false    
(class template)  (range adaptor object)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/ranges/dsc_chunk_by_view&action=edit)  
[ ranges::concat_view  views::concat  ](/mwiki/index.php?title=cpp/ranges/concat_view&action=edit&redlink=1 "cpp/ranges/concat view \(page does not exist\)") (C++26)  |  a [ ` view ` ](/w/cpp/ranges/view "cpp/ranges/view") consisting of concatenation of the adapted views   
(class template)  (customization point object)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/ranges/dsc_concat_view&action=edit)  
  
###  Customization point objects  
  
#####  Range access  
  
Defined in namespace ` std::ranges `  
[ ranges::begin  ](/w/cpp/ranges/begin "cpp/ranges/begin") (C++20)  |  returns an iterator to the beginning of a range   
(customization point object)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/ranges/dsc_begin&action=edit)  
[ ranges::end  ](/w/cpp/ranges/end "cpp/ranges/end") (C++20)  |  returns a sentinel indicating the end of a range   
(customization point object)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/ranges/dsc_end&action=edit)  
[ ranges::cbegin  ](/w/cpp/ranges/cbegin "cpp/ranges/cbegin") (C++20)  |  returns an iterator to the beginning of a read-only range   
(customization point object)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/ranges/dsc_cbegin&action=edit)  
[ ranges::cend  ](/w/cpp/ranges/cend "cpp/ranges/cend") (C++20)  |  returns a sentinel indicating the end of a read-only range   
(customization point object)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/ranges/dsc_cend&action=edit)  
[ ranges::rbegin  ](/w/cpp/ranges/rbegin "cpp/ranges/rbegin") (C++20)  |  returns a reverse iterator to a range   
(customization point object)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/ranges/dsc_rbegin&action=edit)  
[ ranges::rend  ](/w/cpp/ranges/rend "cpp/ranges