さすがに昨日のコードだけだと、concatenatedがなんなのかちょっと思い出すのに時間がかかりそうなので、補足します。

concatenatedは「『要素がRange』であるRangeを受け取って、要素のRangeをすべて連結したRangeを返す」というものです。1段階平らにするわけです。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <array>
#include <iostream>
#include <pstade/oven/concatenated.hpp>
 
int main()
{
  using namespace pstade::oven;
 
  int const a[3][3] = {
    {1, 2, 3},
    {4, 5, 6},
    {7, 8, 9},
  };
 
  auto r = a | concatenated;
 
  for (auto x : r)
  {
    std::cout << x << std::endl;
  }
}

上のコードをコンパイル・実行すると、次のような出力になります。

1
2
3
4
5
6
7
8
9

スポンサード リンク

この記事のカテゴリ

  • ⇒ concatenatedを見つけたので昨日はちょっと舞い上がっていた