复合数据类型

编辑
本词条由“匿名用户” 建档。

在计算机科学中,复合数据类型或复合数据类型是任何可以在程序中使用编程语言的原始数据类型和其他复合类型构建的数据类型。它有时被称为结构或集合数据类型,尽管后一个术语也可以指数组、列表等。构建复合类型的行为被称为组合。复合数据类型经常与标量变量形成对比。 结构是C和C++的复合类型的概念,是由一组固定的标记字段或成员组成的数据类型。它之所以被称为结构,是因为在声明它们时使用了结构关键字,它是结构的简称...

复合数据类型

编辑

计算机科学中,复合数据类型或复合数据类型是任何可以在程序中使用编程语言的原始数据类型和其他复合类型构建的数据类型。它有时被称为结构或集合数据类型,尽管后一个术语也可以指数组、列表等。构建复合类型的行为被称为组合。复合数据类型经常与标量变量形成对比。

C/C++结构和类

编辑

结构是C和C++的复合类型的概念,是由一组固定的标记字段或成员组成的数据类型。它之所以被称为结构,是因为在声明它们时使用了结构关键字,它是结构的简称,或者更准确地说,是用户定义的数据结构。在C++中,结构体和类的xxx区别是默认的访问级别,对于类来说是私有的,对于结构体来说是公共的。请注意,虽然类和类的关键字在C++中是全新的,但C编程语言已经有一个原始的结构类型。就所有意图和目的而言,C++结构体是C结构体的超集:几乎所有有效的C结构体都是有效的C++结构体,其语义相同。

复合数据类型的声明

编辑

结构声明由一个字段列表组成,每个字段可以有任何类型。结构对象所需的总存储量是所有字段的存储量之和,加上任何内部填充。

由于在代码中重复书写结构体Account会变得很麻烦,所以在C代码中经常会看到一个typedef语句,为结构体提供更方便的同义词。然而,一些编程风格指南建议不要这样做,声称这样做会混淆类型。

数据类型

作为另一个例子,一个使用浮点数据类型的三维矢量复合类型可以用以下方式创建。同样地,一个颜色结构可以用以下方式创建。在3D图形中,你通常必须同时跟踪每个顶点的位置和颜色。一种方法是使用之前创建的矢量和颜色复合类型来创建一个顶点复合类型。

实例化

编辑

使用与之前相同的格式创建一个结构顶点类型的变量。

成员访问

编辑

为v的组件赋值,像这样。

原始子类型

编辑

结构的主要用途是构造复杂的数据类型,但有时它也被用来创建原始结构子类型。例如,由于标准C要求,如果两个结构具有相同的初始字段,这些字段将以相同的方式表示,因此代码将正确工作

类型签名

编辑

类型签名(或称函数类型)是由原始类型和复合类型构造而成的,在构造复合类型时,可以作为类型本身。

内容由匿名用户提供,本内容不代表vibaike.com立场,内容投诉举报请联系vibaike.com客服。如若转载,请注明出处:https://vibaike.com/170695/

(3)
词条目录
  1. 复合数据类型
  2. C/C++结构和类
  3. 复合数据类型的声明
  4. 实例化
  5. 成员访问
  6. 原始子类型
  7. 类型签名

轻触这里

关闭目录

目录