itsacoaster

range reference test

Mar 22nd, 2021 (edited)
929
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.54 KB | None | 0 0
  1.     struct Numbers {
  2.         std::string word;
  3.         int digit;
  4.     }; 
  5.  
  6.     std::vector<Numbers> numbers = {
  7.         {"one", 1},
  8.         {"two", 2},
  9.         {"three", 3},
  10.         {"four", 4},
  11.         {"five", 5}
  12.     };
  13.    
  14.     const auto get_word = [](const Numbers & in) -> const std::string & {
  15.         return in.word;
  16.     };
  17.    
  18.     std::cout << "All:\n";
  19.     for (auto & num : numbers) {
  20.         std::cout << num.word << '\t' << &num.word << '\n';
  21.     }
  22.    
  23.     std::cout << "\nTransformed:\n";
  24.     for (auto & word : numbers | std::views::transform(get_word)) {
  25.         std::cout << word << '\t' << &word << '\n';
  26.     }
Advertisement
Add Comment
Please, Sign In to add comment