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

如果您打算成为一名优秀的Delphi程序员,那么“接口”、“实现”和“使用”等词需要在您的编程知识中占有特殊的位置。...

如果您打算成为一名优秀的Delphi程序员,那么“接口”、“实现”和“使用”等词需要在您的编程知识中占有特殊的位置。

delphi unit screenshot

德尔福项目

当我们创建一个Delphi应用程序时,我们可以从一个空白项目、一个现有项目或Delphi的一个应用程序或表单模板开始。项目由创建目标应用程序所需的所有文件组成。

选择“查看项目管理器”时弹出的对话框允许我们访问项目中的表单和单元。

项目由单个项目文件(.dpr)组成,该文件列出了项目中的所有表格和单位。通过选择View-Project Source,我们可以查看甚至编辑项目文件(我们称之为项目单元)。因为Delphi维护项目文件,所以我们通常不需要手动修改它,通常不建议没有经验的程序员这样做。

德尔菲单位

正如我们现在所知,表单是大多数Delphi项目的可见部分。Delphi项目中的每个表单也有一个关联的单元。该单元包含附加到窗体事件或其包含的组件的任何事件处理程序的源代码。

由于单元存储项目的代码,因此单元是Delphi编程的基础。一般来说,unit是常量、变量、数据类型以及可由多个应用程序共享的过程和函数的集合。

每次我们创建一个新表单(.dfm文件),Delphi都会自动创建它的关联单元(.pas文件),我们称之为表单单元。但是,单元不必与表单相关联。代码单元包含从项目中的其他单元调用的代码。当您开始构建有用例程的库时,您可能会将它们存储在代码单元中。要向Delphi应用程序添加新的代码单元,请选择文件新建。。。单位。

解剖

无论何时创建单元(表单或代码单元),Delphi都会自动添加以下代码部分:单元头、接口部分、实现部分。还有两个可选部分:初始化和终结。

正如您将看到的,单元必须采用预定义的格式,以便编译器能够读取它们并编译单元代码。

单元头以保留字unit开头,后跟单元名称。当我们在另一个单元的uses子句中引用该单元时,需要使用该单元的名称。

接口部分

本节包含uses子句,其中列出了该单元将使用的其他单元(代码或表格单元)。对于表单单元,Delphi会自动添加标准单元,如窗口、消息等。当您向表单添加新组件时,Delphi会将适当的名称添加到“使用”列表中。然而,Delphi没有向代码单元的接口部分添加uses子句,我们必须手动添加。

在单元接口部分,我们可以声明全局常量、数据类型、变量、过程和函数。

请注意,在设计表单时,Delphi会为您构建一个表单单元。表单数据类型、创建表单实例的表单变量以及事件处理程序都在接口部分声明。

由于不需要将代码单元中的代码与关联表单同步,因此Delphi不会为您维护代码单元。

接口部分在保留字实现处结束。

执行科

单元的实现部分是包含单元实际代码的部分。实现可以有自己的附加声明,尽管任何其他应用程序或单元都无法访问这些声明。这里声明的任何Delphi对象都只能用于单元内的代码(全局到单元)。可选uses子句可以出现在实现部分中,并且必须紧跟在实现关键字之后。

初始化和定稿部分

这两个部分是可选的;创建单元时,不会自动生成它们。如果要初始化装置使用的任何数据,可以向装置的初始化部分添加初始化代码。当应用程序使用单元时,在运行任何其他应用程序代码之前,将调用单元初始化部分中的代码。

如果您的单元在应用程序终止时需要执行任何清理,例如释放初始化部分中分配的任何资源;你可以在你的单元中添加一个完成部分。终结部分位于初始化部分之后,但在最终结束之前。

  • 发表于 2021-09-10 20:53
  • 阅读 ( 181 )
  • 分类:IT

你可能感兴趣的文章

孟德尔式(mendelian)和非孟德尔遗传(non mendelian inheritance)的区别

孟德尔式(mendelian)和非孟德尔遗传(non mendelian inheritance)的区别 遗传是遗传信息从父母传给后代的过程。1860年代,格雷戈·门德尔提出了遗传理论,并解释了等位基因是如何分离的,显性性状是在杂合子中表达的。这个理论被...

  • 发布于 2020-10-23 22:08
  • 阅读 ( 485 )

salesforce宣布9到5个工作日结束,从现在起将允许一些员工远程工作

...“在我们进入新的一年之际,我们必须以敏捷、创造力和初学者的头脑继续前进——这包括我们如何培养我们的文化。Salesforce首席人事官布伦特•海德尔(Brent Hyder)写道:“身临其境的工作空间不再局限于我们大楼里的办公桌...

  • 发布于 2021-04-16 09:09
  • 阅读 ( 186 )

吉列尔莫德尔托罗正在做一个可怕的故事,告诉在黑暗的电影

...孩》、《潘神的迷宫》和《深红之峰》的导演吉列尔莫·德尔·托罗(Guillermo del Toro)正在开发一个电影版的经典儿童读物三部曲《在黑暗中讲述可怕的故事》。据《最后期限》报道,德尔·托罗将根据阿尔文·施瓦茨的著作为哥...

  • 发布于 2021-05-03 03:00
  • 阅读 ( 152 )

七分钟在新的肯德尔和凯莉詹纳手机游戏

肯德尔和凯莉詹纳,卡戴珊/詹纳家族的名声,有一个新的****今天。它的名字叫肯德尔和凯莉,它是由Glu,同一家公司,使金卡戴珊的游戏,凯蒂佩里的游戏,并将使泰勒斯威夫特的未来游戏。我和凯特琳·蒂芙尼很感兴趣,辞...

  • 发布于 2021-05-03 12:03
  • 阅读 ( 180 )

雀巢的第一个后法德尔产品将是一个户外版的雀巢凸轮

...品。
 在首席执行官兼联合创始人托尼•法德尔(tonyfadell)离职后,雀巢的未来一直受到质疑。昨天,Verge发布了Nest新任首席执行官Marwan Fawaz派遣员工的说明,他在说明中确认,公司“绝对不**”,并坚持新产品的...

  • 发布于 2021-05-05 08:18
  • 阅读 ( 132 )

德尔福在新加坡测试自动驾驶汽车服务

...出,成为在公共街道上获得自动驾驶汽车的早期试验场,德尔福今天宣布,它将向新加坡陆路交通管理局提供一个自动驾驶汽车车队,以及一个按需流动计划的软件。这是新加坡推进自主汽车研究计划的一部分,该计划于2014年...

  • 发布于 2021-05-06 17:35
  • 阅读 ( 156 )

德尔福(delphi)和美孚眼(mobileye)正在合作,到2019年建立一个自动驾驶系统

德尔福(Delphi)和美孚眼(Mobileye)两家领先的汽车零部件供应商今天宣布,他们将结成合作伙伴关系,在2019年前开发出一套近乎完整的自动驾驶系统。该计划旨在创建一个大众市场,现成的系统,可以**各种车型,从小型车到S...

  • 发布于 2021-05-07 03:29
  • 阅读 ( 170 )

为什么德尔福和美孚眼认为他们有自动驾驶汽车的秘方

德尔福(Delphi)和美孚眼(Mobileye)这两家领先的汽车零部件供应商,在自动驾驶领域的知名度不如其更大的竞争对手谷歌(Google)和特斯拉(Tesla)。但通用汽车(GM)在英国的子公司德尔福(Delphi)已经展示了三年多的自主技...

  • 发布于 2021-05-08 21:20
  • 阅读 ( 189 )

vergecast特别版:brian merchant,one device的作者

...名小卒。 当然,我们在刚刚出版的节选中谈到了托尼·法德尔和比尔·比尔布雷的引述,法德尔在其中讲述了菲尔·席勒的故事,认为iPhone应该有一个硬件键盘。席勒说这个故事不是真的,法德尔也试图把它带回去。 “所以,10...

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

德尔福以4.5亿美元收购自驾车创业公司nutonomy

全球最大的汽车供应商之一德尔福(Delphi)今天宣布,将以4亿美元的前期收购价收购总部位于波士顿的自动驾驶汽车初创公司NuTonomy,并获得5000万美元的收益。 德尔福在自动驾驶领域的知名度不如其更大的竞争对手U...

  • 发布于 2021-06-21 14:52
  • 阅读 ( 145 )
vyjj71621
vyjj71621

0 篇文章

相关推荐