Statements (54)
| Predicate | Object |
|---|---|
| gptkbp:instanceOf |
gptkb: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>
|
| 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 |
8
|
| https://www.w3.org/2000/01/rdf-schema#label |
C++20 Ranges
|