首页 > 其他分享 >delphi中unit单元文件说明

delphi中unit单元文件说明

时间:2023-10-06 11:11:32浏览次数:32  
标签:语句 implementation delphi unit interface 部分 单元

单元(unit)是组成Pascal程序的单独的源代码模块,单元有函数和过程组成,这些函数和过程能被主程序调用。一个单元至少要有unit语句,interface,和implementation三部分,也能可选的包含initialization和finalization两部分:

一、必含部分

1、unit语句

每一个单元都必须在开头有这样一条语句,以标识单元的名称,单元的名称必须和文件名相匹配。例如,如果有一个文件名为FooBar,则unit语句可能是:

unit FooBar;

2、 interface部分

在unit语句后的源代码必须是interface语句。在这条语句和implementation语句之间是能被程序和其他单元所共享的信息。一个单元的interface部分是声明类型、常量、过程和函数的地方,这些都能被主程序和其他单元调用。这里只能有声明,而不能有过程体和函数体。interface语句应当只有一个单词且在一行:

interface

3、implementation部分

它在interface部分的后面。虽然单元的implementation包含了过程和函数的源代码,但它同时也允许在此声明不被其他单元所调用的任何数据类型、常量和变量。implementation是定义在interface中声明的过程和函数的地方,implementation语句只有一个单词并且在一行上:

implementation

二、可选部分

4、initialization部分

在单元中它放在文件结尾前,它包含了用来初始化单元的代码,它在主程序运行前运行并只运行一次。

5、finalization部分

在单元中它放在initialization和end之间。finalization部分包含用于退出过程的代码

注意:如果几个单元都有initialization/finalization部分,则它们的执行顺序与单元在主程序的users子句中的出现顺序一致。不要使initialization/finalization部分的代码依赖于它们的执行顺序,因为这样的话主程序的users子句只要有小小的修改就会导致程序无法通过编译。

-----------------------------------------------------------------

unit Unit1;

interface
{接口部分开始}
uses
{引用单元列表,这是可选的,如果包含必须紧跟interface关键字}

{接口部分声明常量/类型/变量/过程和函数,这些声明对引用单元就像自己的声明一样}
{在接口部分声明的过程和函数,就像使用了forward关键字}


{接口部分结束}
implementation
{实现部分}
uses
{如果包含uses字句,必须紧跟关键字implementation}
{在这里实现interface中定义的过程和函数,可以任意顺序的定义和调用.}
{在这里可以省略过程和函数的列表,如果包括,必须一样.}
{可以定义单元私有的常量/类型(包括类)/变量/过程和函数,但这些对引用单元的客户是不可见的}

{$R *.dfm}
{如果是对应窗体的单元文件,会有这句. $R 指令用于加载一个外部资源文件, 这里是指加载同名的窗体文件一起编译.}
initialization
{初始化部分}
{程序启动时先执行,并顺序执行}
{一个单元的初始化代码运行之前,就运行了它使用的每一个单元的初始化部分}
finalization
{结束化部分,程序结束时执行}
end.

-----------------------------------------------------------------

转自:https://www.cnblogs.com/karkash/p/9436610.html

           https://blog.csdn.net/qq_33577118/article/details/118113023

标签:语句,implementation,delphi,unit,interface,部分,单元
From: https://www.cnblogs.com/sdlz/p/17744335.html

相关文章

  • delphi中FormDestroy和FormClose的区别和联系
    在Delphi中,FormDestroy和FormClose是用于处理窗体关闭事件的两个不同的事件处理程序。它们有一些区别和联系,下面我将详细解释它们之间的差异和关联:FormDestroy事件:FormDestroy事件是一个在窗体销毁时触发的事件。这个事件通常用于释放在窗体生命周期内创建的资源,如对象、......
  • Delphi dll 传递字符串
    //dllcodeuses//ShareMem,SysUtils,Windows,Math;{$R*.res}functionTestString1(Buffer:PChar):PChar;stdcall;varTmpstr:string;begintryTmpstr:=Buffer;ifTmpstr<>''thenbeginResult:=StrAlloc(Length......
  • TypeScript入门到精通——TypeScript类型系统基础——单元类型、顶端类型、尾端类型
    单元类型 单元类型(UnitType)也叫作单例类型(SingletonType),指的是仅包含一个可能值的类型。由于这个特殊的性质,编译器在处理单元类型时甚至不需要关注单元类型表示的具体值。 TypeScript中的单元类型有以下几种:undefined类型null类型uniquesymbol类型void类型......
  • 从零开始学Unity(一)-主要窗口及功能区域
    声明:本人学习过程跟随NeilianAryan大佬课程从零开始的Unity魔法学堂学习部分思路及案例可能来源于课程内案例做此笔记仅为记录学习过程方面日后整理及回顾如有侵权联系删除谢谢!!unity主要窗口Scene、Game、Hierarchy、Inspector、Project、ConsoleScene场景窗口在默......
  • 【翻译中】骇入Unity游戏(2)-操作与控制
    【翻译中】骇入Unity游戏(2)-操作与控制来源:https://www.hypn.za.net/blog/2020/04/19/hacking-unity-games-part-2-manipulating/......
  • 什么是 VMware Workstation Player 的 Unity 模式
    VMwareWorkstationPlayer的Unity模式是该虚拟化软件的一个令人印象深刻的功能,它允许用户将虚拟机中的应用程序窗口集成到主机操作系统的桌面环境中,使其看起来就像是在主机上运行的本地应用程序。Unity模式提供了出色的用户体验,同时提高了工作效率,特别是对于需要在虚拟机和主机操......
  • VMWare 虚拟机 CPU 设置里针对 CPU 的虚拟化 IOMMU(IO 内存管理单元) 选项功能介绍
    虚拟化技术在现代计算中扮演着关键角色,使多个虚拟机(VM)能够在单个物理主机上同时运行。VMware作为虚拟化技术的领导者之一,提供了许多高级设置选项,其中之一是“虚拟化IOMMU(IO内存管理单元)(I)”选项。在本文中,我将详细介绍这个选项的作用,并提供示例来说明其实际应用。1.虚拟化......
  • delphi泛型模板编程
    delphi泛型模板编程泛型模板编程的关键:泛型作用体现在模板,体现在虚实之间相互转换,以虚概实,以实就虚。unitTxInfo;interfaceusesSystem.Types,System.Classes,System.SysUtils,Generics.Collections;typeTPeople=recordName:string;Age:str......
  • Unity性能优化-GPU Instancing
    GPUInstancing是Unity的一种优化技术。使用GPUInstancing可以在一个DrawCall中同时渲染多个相同或类似的物体,从而减少CPU和GPU的开销。官方文档:https://docs.unity3d.com/Manual/GPUInstancing.html要启用GPUInstancing,我们可以选中一个材质,然后在Inspector窗口勾选Enable......
  • Unity性能优化-动态合批
    动态合批也叫动态批处理,是Unity的一种优化技术。对移动的物体使用动态合批后,则Unity不会一个个绘制它们,而是把它们合并为一个批次(Batch),再由CPU把它们一次性提交给GPU进行处理,这样可以减少DrawCall带来的性能消耗,从而提高性能。官方文档:https://docs.unity3d.com/cn/current/Man......