Delphi的编程语言是强类型语言的一个例子。这意味着所有变量必须是某种类型。类型本质上是一种数据的名称。当我们声明一个变量时,我们必须指定它的类型,它决定了变量可以保存的值集以及可以对其执行的操作。
Delphi的许多内置数据类型(如Integer或String)都可以进行优化或组合以创建新的数据类型。在本文中,我们将看到如何在Delphi中创建自定义序号数据类型。
有序数据类型的定义特征是:它们必须由有限数量的元素组成,并且必须以某种方式排序。
顺序数据类型最常见的示例是所有整数类型以及Char和Boolean类型。更准确地说,对象Pascal有12种预定义的顺序类型:整数、短整型、小整型、长整型、字节、字、基数、布尔型、ByteBool、WordBool、LongBool和Char。还有另外两类用户定义的序号类型:枚举类型和子范围类型。
在任何顺序类型中,向后或向前移动到下一个元素都是有意义的。例如,实类型不是有序的,因为向后或向前移动没有意义。“2.5之后的下一个实数是什么?”这个问题毫无意义。
根据定义,除第一个值外的每个值都有一个唯一的前置值,而除最后一个值外的每个值都有一个唯一的后继值,因此在处理顺序类型时使用了几个预定义函数:
作用 | 影响 |
作战需求文件(X) | 给出元素的索引 |
Pred(X) | 转到类型中X前面列出的元素 |
成功(X) | 转到类型中X后面列出的元素 |
十二月(X;n) | 向后移动n个元素(如果省略n,则向后移动1个元素) |
公司(X;n) | 向前移动n个元素(如果省略n,则向前移动1个元素) |
低(X) | 返回顺序数据类型X范围内的最小值 |
高(X) | 返回顺序数据类型X范围内的最大值 |
例如,High(Byte)返回255,因为Byte类型的最大值是255,而Such(2)返回3,因为3是2的后续值。
注意:如果在最后一个元素尝试使用Succ,那么如果范围检查打开,Delphi将生成一个运行时异常。
创建序号类型的新示例最简单的方法就是以某种顺序列出一组元素。这些值没有固有的含义,它们的顺序遵循标识符列出的顺序。换句话说,枚举是一个值列表。
类型tweekdays=(星期一、星期二、星期三、,定义枚举数据类型后,可以将变量声明为该类型:
变量有一天:十二天;枚举数据类型的主要目的是明确程序将操作哪些数据。枚举类型实际上只是将顺序值分配给常量的一种简写方式。鉴于这些声明,星期二是TWeekDays类型的常量。
Delphi允许我们使用一个索引来处理枚举类型中的元素,该索引来自它们的列出顺序。在上一个示例中,TWeekDays类型声明中的星期一具有索引0,星期二具有索引1,依此类推。例如,前面表格中列出的函数让我们使用Succ(星期五)来“转到”星期六。
现在我们可以尝试以下方法:
对于某天:=星期一到星期日做 如果某天=星期二然后showmessage('今天是星期二!');Delphi可视化组件库在许多地方使用枚举类型。例如,表单的位置定义如下:
t位置=(podesigned、podefault、podefaultposonly、,我们使用位置(通过对象检查器)获取或设置窗体的大小和位置。
简单地说,子范围类型表示另一个序号类型中的值的子集。通常,我们可以通过从任何序号类型(包括先前定义的枚举类型)开始并使用双点来定义任何子范围:
类型两个工作日=星期一。。星期五;此处TWorkDays包括值周一、周二、周三、周四和周五。
就这些-现在去列举吧!
...um是一种存储整型常量的数据类型。这就是C中结构并集和枚举的主要区别。 在编程中,变量可以存储单一数据类型的值。有时,需要将不同类型的变量存储为一个单元。结构和并集是将不同类型的多个变量存储为单个变量的两...
...。因此,它是一种灵活的数据结构。ArrayList维护元素的**顺序。此外,ArrayList类中还提供了预定义的方法。程序员可以在程序中使用它们。 Figure 1: ArrayList program 如果您查看上面的程序,“fruits”是ArrayList类型的对象。它可以存...
...行诸如检索、更新和插入XML数据之类的操作。 作为一名Delphi程序员,您应该知道如何使用XML文档。 xml与delphi 有关将Delphi与XML配对的更多信息,请阅读: 了解如何将TTreeView组件项存储到XML(保留树节点的文本和其他属性)...
...止其他人操纵这些加载项文件。 本文将向您展示如何在Delphi可执行文件中嵌入(和使用)声音文件、视频剪辑、动画以及更一般的任何类型的二进制文件。对于最通用的用途,您将看到如何将MP3文件放入Delphi exe中。 资源文...
简单地说,文件是某种类型的二进制序列。在Delphi中,有三类文件:类型化、文本和非类型化。类型化文件是包含特定类型数据的文件,例如双精度、整数或以前定义的自定义记录类型。文本文件包含可读的ASCII字符。当我们想...
希望掌握Delphi编程语言的初学者应该已经熟悉Microsoft Windows的基础知识。学习Delphi是最容易的,如果你从一个有指导的、基于教程的参考框架来学习它。 基本概念 从一堂历史课开始,介绍(Turbo)Pascal到Delphi 2005的演变,例...
简而言之,Delphi项目只是组成由Delphi创建的应用程序的文件集合。DPR是用于Delphi项目文件格式的文件扩展名,用于存储与项目相关的所有文件。这包括其他Delphi文件类型,如表单文件(DFM)和单元源文件(.PASs)。 由于Delphi...
如果您打算成为一名优秀的Delphi程序员,那么“接口”、“实现”和“使用”等词需要在您的编程知识中占有特殊的位置。 德尔福项目 当我们创建一个Delphi应用程序时,我们可以从一个空白项目、一个现有项目或Delphi的一...
... 此查询来自一位正在寻找增强DBNavigator组件功能的方法的Delphi开发人员。 DBNavigator是一个很好的组件,它提供了一个类似VCR的界面,用于在数据库应用程序中导航数据和管理记录。记录导航由第一个、下一个、上一个和最后一...
Delphi DBGrid是一个功能强大的组件,如果您正在开发数据感知应用程序,那么您可能每天都在使用它。下面,我们将了解如何向您的数据库应用程序中添加更多用户肯定会喜欢的功能。 按照《Delphi数据库编程初学者指南》中描...