ranges/subrangecounted.cpp
The following code example is taken from the book
C++20 - The Complete Guide
by Nicolai M. Josuttis,
Leanpub, 2021
The code is licensed under a
Creative Commons Attribution 4.0 International License.
//
raw code
#include
<iostream>
#include
<string>
#include
<unordered_map>
#include
<ranges>
void
printPairs(
auto
&& rg)
{
for
(
const
auto
& [key, val] : rg) {
std::cout << key <<
':'
<< val <<
' '
;
}
std::cout <<
'\n'
;
}
int
main()
{
// English/German dictionary:
std::unordered_multimap<std::string,std::string> dict = {
{
"strange"
,
"fremd"
},
{
"smart"
,
"klug"
},
{
"car"
,
"Auto"
},
{
"smart"
,
"raffiniert"
},
{
"trait"
,
"Merkmal"
},
{
"smart"
,
"elegant"
},
};
printPairs(dict);
printPairs(std::views::counted(dict.begin(), 3));
}