C++20 Ranges

GPTKB entity

Statements (54)
Predicate Object
gptkbp:instanceOf C++20 feature
gptkbp:documentation https://en.cppreference.com/w/cpp/ranges
https://wg21.link/p0896r4
gptkbp:enables lazy evaluation
range-based for loops
range adaptors
range-based algorithms
composable operations
custom range types
pipeline operator |
pipeline syntax
views composition
gptkbp:example std::ranges::common_view
std::ranges::drop_view
std::ranges::elements_view
std::ranges::filter_view
std::ranges::iota_view
std::ranges::join_view
std::ranges::reverse_view
std::ranges::split_view
std::ranges::subrange
std::ranges::take_view
std::ranges::transform_view
std::ranges::all_view
std::ranges::counted_view
std::ranges::empty_view
std::ranges::ref_view
std::ranges::single_view
gptkbp:headerFile <ranges>
https://www.w3.org/2000/01/rdf-schema#label C++20 Ranges
gptkbp:improves code readability
algorithm expressiveness
code composability
performance (via lazy evaluation)
gptkbp:introducedIn gptkb:C++20
gptkbp:mainHeader <ranges>
gptkbp:mainNamespace std::ranges
gptkbp:partOf gptkb:C++_Standard_Library
gptkbp:provides actions
views
range adaptors
range-based algorithms
gptkbp:relatedTo gptkb:C++_Algorithms
gptkb:C++_Concepts
gptkb:C++_Containers
C++ Iterators
C++ Views
gptkbp:standardizedBy gptkb:ISO/IEC_JTC1/SC22/WG21
gptkbp:uses sentinels
iterators
concepts
views
gptkbp:bfsParent gptkb:Eric_Niebler
gptkbp:bfsLayer 7