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
|