プログラミング言語における型(データ型)の分類の1つで、複数の型の組み合わせによって作られる型のことです。
単一の値だけを表現する型をスカラ型と呼びます。スカラ型や、ほかの複合型と組み合わせることで作られる型が複合型です。
具体的にどのような型を複合型に分類するかは、プログラミング言語の種類によっても異なりますが、配列や構造体、クラスなどが複合型の代表例です。文字列型のように、プログラミング言語によってスカラー型に分類されたり、(文字型の配列として表現されることから)複合型に分類されたりするものもあります。
C99 では、配列型と構造体型を総称したものを集成体型 と呼んでいます[1]。
composite type という用語も登場しますが、JIS によると合成型と訳されており、適合する2つの型から得られる型のことを意味しています。
規格書の例によると[2]、たとえば、適合する2つの型
int f(int (*)(), double (*)[3]);
と
int f(int (*)(char*), double (*)[]);
の合成型は、int f(int (*)(char*), double (*)[3]);
とされている。
C++14 では compound type と呼ばれており、配列型、関数型、ポインタ型、参照型、クラス型、列挙型、非staticデータメンバへのポインタと、これらを再帰的に繰り返した型であると定義されています[3]。
Programming Place Plus のトップページへ
はてなブックマーク に保存 | Pocket に保存 | Facebook でシェア |
X で ポスト/フォロー | LINE で送る | noteで書く |
RSS | 管理者情報 | プライバシーポリシー |