Delphi项目构成之单元文件PAS
2016-05-22 11:22
585 查看
Delphi项目构成之单元文件PAS
单元文件是Pascal源文件,扩展名为.pas。有三种类型的单元文件:
窗体/数据模块和框架的单元文件(form/data module and frame units),一般由Delphi自动生成。
组件的单元文件(component units),由您或者Delphi生成。
通用的单元文件(general-purpose units),有您创建。
下面让我们看看基本的Pascal单元文件结构是如何的?
Step1、在主菜单上选择【File | New | Unit】,Delphi将创建一个新的单元,并在Code
Editor中显示出。
Step2、让我们来看看一个最简单的pascal单元,包括了四个关键字unit、interface、implementation和end;
比较全的单元如下,请看注释:
unit Unit1; interface uses { List of units goes here } Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs; { Interface section goes here } type { type关键字用来声明一个新的类型} TMyArray = array[0..19] of Byte; { 声明TMyArray用来代替array[0..19] of Byte} const { const关键字用来声明常量} AppCation = 'Hello World'; { AppCation由于在interface段声明,它在单元的任何地方都可以用} var { var关键字用来声明变量,也分interface段和implementation段} X: Integer; MyArry: TMyArray; { MyArray为刚才定义的TMyArray新类型} procedure DoSomething; { 声明一个DoSomething过程} implementation uses { List of units goes here } SysUtils, Variants; var ObjList: TObjectList; const { BaseX,BaseY由于在implementation段声明,只能在单元内使用} BaseX = 20; BaseY = 200; { 实现interface段声明的DoSomething过程} procedure DoSomething; begin { Code for DoSomething goes here.} end; //C++风格的注释,只能用于单行注释 (* 相同类型注释不能嵌套 *) { 推荐使用的注释符号 } { Implementation section goes here } initialization { Initialization section goes here } ObjList := TObjectList.Create; finalization { Finalization section goes here } FreeAndNil(ObjList); end.
uses单元引用
一个单元引用的外部单元清单,其中每个单元必须用逗号分开,最后一个单元必须加分号,分号表示该uses清单的结束。
interface接口段
用来生命这个单元的输出标识符,即能被其他单元访问的项。接口段以interface开始,以implementation结束。
implementation执行段
执行段以implementation开始,以下一个关键字结束,下一个关键字通常就是单元的最后关键字end。但在有初始化的单元中,下一个关键就是initialization关键字。
以上三个部分是unit单元必须要的。接下来两个关键字部分是可选的。
initialization单元初始化和finalizaiton单元结束
用来执行启动和清理的代码,初始化中的任何代码在其单元载入内存时都要被执行,结束段中的任何代码在单元从内存中清理前都要被执行。
可以只有一个初始化段,但不能只有结束段,而没有初始化段。
相关文章推荐
- Delphi 的 7zip 压缩算法
- 为什么运行delphi时菜单栏没有显示,但是设计时菜单栏出现?
- delphi中UTF8Deocde的问题
- Delphi读写UTF-8、Unicode格式文本文件
- [Delphi]编译条件
- unicode与GB2312转换等Delphi函数(转)
- Delphi String的散漫记录,真是知识无数,陷阱无数(转)
- 第一个Delphi小程序
- delphi博客
- delphi 多线程定时执行程序如何写
- [Delphi]接口认识
- 一个功能增强的Delphi TListView组件
- DELPHI copy,pos函数用法
- delphi LPT1端口打印与开钱箱
- delphi安装 Tclientsocket, Tserversocket控件
- Log4delphi使用心得
- delphi32位程序转换成64位程序攻略
- delphi ios grid BindSourceDB bug
- delphi中Message消息的使用方法
- 减小Delphi XE5编译出来的程序体积