在计算机科学中,复合类型是一种数据类型,它可以原始类型和其它的复合类型所构成。构成一个复合类型的动作,又称作组合。
struct是 C 和 C++ 的复合类型概念,是一个将字段或成员以一定组合方式所组成的数据类型。因为在宣告时,使用了关键字 struct,所以它简称为,或者更精确地说。
在 C++ 里,struct 与class的唯一区别是默认的访问等级,class是,struct 则是。
注意尽管类的概念和关键字class是C++新引入的,C语言也已具备粗糙的 struct 类型。对于所有的意图和目的, C++ 的struct是 C struct 的超集:几乎所有合法的 C struct 也是合法的 C++ struct,并有着相同的语义。
struct 宣告组成一个字段清单,其中的每一个可以是任意类型。对于 struct 对象所需的存储区,即为全部字段的总合,再加上内部的补白。
例如:
struct Account { int account_number; char *first_name; char *last_name; float balance; };