Arrays
配列は二要素のタプルからなるデータ構造である。
その第一要素は配列の要素数であり、
第二要素は配列の要素となる別のタプルである。
例えば、
(3, (a, b, c))
は a、b、c の三要素からなる配列である。
配列の最も重要な長所は、それが自分自身のサイズを保持していることである。
このおかげで、要素へのアクセスにはサイズを必要としない。
必要なことは、そのインデックスに要素が存在することだけだ。
この構造により、マクロ引数は可変長となることができ(※訳注:マクロが任意のサイズの配列を受けることが可能となる)、
ユーザーが自力でサイズ変化を追尾することをせずとも、データのサイズを変更できる。
配列の要素は BOOST_PP_ARRAY_ELEM、
サイズは BOOST_PP_ARRAY_SIZE により展開され、
さらに配列は BOOST_PP_ARRAY_DATA により、より基本的なデータ構造であるタプルに変換できる。
Primitives