在delphi中理解和使用记录数据类型

布景还可以,阵列也不错。...

布景还可以,阵列也不错。

Young man surfing the net

假设我们想要为编程社区中的50个成员创建三个一维数组。第一个数组用于名称,第二个数组用于电子邮件,第三个数组用于向我们的社区上传的数量(组件或应用程序)。

每个数组(列表)都有匹配的索引和大量代码来并行维护所有三个列表。当然,我们可以尝试使用一个三维数组,但是它的类型呢?姓名和电子邮件需要字符串,上传次数需要整数。

使用这种数据结构的方法是使用Delphi的记录结构。

tmember=记录。。。

例如,下面的声明创建了一个名为TMember的记录类型,我们可以在本例中使用它。

实际上,记录数据结构可以混合任何Delphi内置类型,包括您创建的任何类型。记录类型定义不同类型项的固定集合。每个项目或字段都类似于一个变量,由名称和类型组成。

TMember类型包含三个字段:一个名为Name的字符串值(用于保存成员的名称)、一个名为eMail的字符串值(用于一封电子邮件)和一个名为Posts的整数(基数)(用于保存提交给社区的提交数)。

一旦设置了记录类型,就可以将变量声明为TMember类型。TMember现在和任何Delphi的内置类型(比如String或Integer)一样适合变量。注意:TMember类型声明不会为Name、eMail和Posts字段分配任何内存;

要实际创建TMember记录的实例,我们必须声明TMember类型的变量,如下代码所示:

现在,当我们有一个记录时,我们用一个点来分隔DelphiGuide的字段。

注意:上面的代码可以使用with关键字重写。

现在我们可以将DelphiGuide字段的值复制到AMember。

记录范围和可见性

在表单(实现部分)、函数或过程的声明中声明的记录类型的作用域仅限于声明它的块。如果记录是在单元的接口部分声明的,则其作用域包括使用声明所在单元的任何其他单元或程序。

一系列记录

由于TMember的行为类似于任何其他对象Pascal类型,因此我们可以声明一个记录变量数组:

注意:下面是如何在Delphi中声明和初始化一个常量记录数组。

作为记录字段的记录

由于记录类型与任何其他Delphi类型一样合法,因此我们可以将记录的字段设置为记录本身。例如,我们可以创建ExpandedMember来跟踪成员提交的内容以及成员信息。

现在填写一条记录所需的所有信息变得更加困难了。访问TExpandedMember字段需要更多句点。

带有“未知”字段的记录

记录类型可以有一个变量部分(不要与变量类型混淆)。例如,当我们想要创建一个记录类型,其中包含用于不同类型数据的字段时,会使用变量记录,但我们知道,我们永远不需要在单个记录实例中使用所有字段。要了解更多关于记录中的变量部分,请查看Delphi的帮助文件。使用变体记录类型不是类型安全的,也不是推荐的编程实践,特别是对于初学者。

然而,如果您发现自己处于使用变体记录的情况下,变体记录可能非常有用。

  • 发表于 2021-09-15 04:05
  • 阅读 ( 194 )
  • 分类:IT

你可能感兴趣的文章

用delphi创建、解析和操作xml文档

...行诸如检索、更新和插入XML数据之类的操作。 作为一名Delphi程序员,您应该知道如何使用XML文档。 xml与delphi 有关将Delphi与XML配对的更多信息,请阅读: 了解如何将TTreeView组件项存储到XML(保留树节点的文本和其他属性)...

  • 发布于 2021-09-06 15:05
  • 阅读 ( 164 )

如何将媒体文件嵌入delphi可执行文件(rc/.res)(embed media files into a delphi executable (rc/.res))

...止其他人操纵这些加载项文件。 本文将向您展示如何在Delphi可执行文件中嵌入(和使用)声音文件、视频剪辑、动画以及更一般的任何类型的二进制文件。对于最通用的用途,您将看到如何将MP3文件放入Delphi exe中。 资源文...

  • 发布于 2021-09-06 15:08
  • 阅读 ( 189 )

使用delphi的键入文件文件创建数据库

简单地说,文件是某种类型的二进制序列。在Delphi中,有三类文件:类型化、文本和非类型化。类型化文件是包含特定类型数据的文件,例如双精度、整数或以前定义的自定义记录类型。文本文件包含可读的ASCII字符。当我们想...

  • 发布于 2021-09-06 15:11
  • 阅读 ( 170 )

了解delphi编程的基础知识

希望掌握Delphi编程语言的初学者应该已经熟悉Microsoft Windows的基础知识。学习Delphi是最容易的,如果你从一个有指导的、基于教程的参考框架来学习它。 基本概念 从一堂历史课开始,介绍(Turbo)Pascal到Delphi 2005的演变,例...

  • 发布于 2021-09-06 15:13
  • 阅读 ( 180 )

理解delphi项目和单元源文件

简而言之,Delphi项目只是组成由Delphi创建的应用程序的文件集合。DPR是用于Delphi项目文件格式的文件扩展名,用于存储与项目相关的所有文件。这包括其他Delphi文件类型,如表单文件(DFM)和单元源文件(.PASs)。 由于Delphi...

  • 发布于 2021-09-06 15:15
  • 阅读 ( 171 )

delphi中的sql

...形式,允许您选择、插入、更新、查找数据位置等。 delphi中的tquery 如果要在应用程序中使用SQL,您将非常熟悉TQuery组件。Delphi使您的应用程序能够通过TQuery组件直接使用SQL语法来访问Paradox和dBase表(使用本地SQL—ANSI标准SQL...

  • 发布于 2021-09-08 10:40
  • 阅读 ( 183 )

德尔福单元剖析(德尔福初学者版)

如果您打算成为一名优秀的Delphi程序员,那么“接口”、“实现”和“使用”等词需要在您的编程知识中占有特殊的位置。 德尔福项目 当我们创建一个Delphi应用程序时,我们可以从一个空白项目、一个现有项目或Delphi的一...

  • 发布于 2021-09-10 20:53
  • 阅读 ( 180 )

如何delphidbgrid中的multiselect(multiselect in the delphi dbgrid)

Delphi的DBGrid是数据库相关应用程序中使用最广泛的DB感知组件之一。它的主要目的是使应用程序的用户能够在表格网格中操作数据集中的记录。 DBGrid组件的一个鲜为人知的特性是,可以将其设置为允许多行选择。这意味着用...

  • 发布于 2021-09-10 22:29
  • 阅读 ( 187 )

如何delphidbgrid中的记录排序(sort records in delphi dbgrid)

Delphi DBGrid是一个功能强大的组件,如果您正在开发数据感知应用程序,那么您可能每天都在使用它。下面,我们将了解如何向您的数据库应用程序中添加更多用户肯定会喜欢的功能。 按照《Delphi数据库编程初学者指南》中描...

  • 发布于 2021-09-10 22:31
  • 阅读 ( 231 )

delphi的顺序和枚举数据类型

Delphi的编程语言是强类型语言的一个例子。这意味着所有变量必须是某种类型。类型本质上是一种数据的名称。当我们声明一个变量时,我们必须指定它的类型,它决定了变量可以保存的值集以及可以对其执行的操作。 Delphi...

  • 发布于 2021-09-10 23:38
  • 阅读 ( 195 )

相关推荐