单元(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子句只要有小小的修改就会导致程序无法通过编译。

最新文章

  1. Java Swing interview
  2. QT插件使用
  3. how to enable remote access for root user
  4. Cloudera Manager 5和CDH5离线安装
  5. magic矩阵 分类: 数学 2015-07-31 22:56 2人阅读 评论(0) 收藏
  6. c++ 继承和组合的区别
  7. bnuoj 29375 Two Strings(字符串?)
  8. libthrift0.9.0解析(五)之TNonblockingServer&THsHaServer
  9. 重写OnPaint事件对窗体重绘(显示gif动画) 实例2
  10. APNS 那些事!
  11. node.js系列笔记之node.js初识《一》
  12. Properties 使用,注意编码
  13. RobotFramework自动化测试框架的基础关键字(五)
  14. NVisionXR引擎基本介绍
  15. 吴恩达课后作业学习1-week2-homework-logistic
  16. spring入门--spring入门案例
  17. JAVA四则运算字符串解释器
  18. numpy+pandas 基础学习
  19. B2
  20. [CDOJ887]轻音乐同好会(跳石头)

热门文章

  1. 非分离线程未使用join函数例子:
  2. thymeleaf+bootstrap,onclick传参实现模态框中遇到的错误
  3. 丰富您设计的10个CSS3效果库
  4. AWS SDK for C++调用第三方S3 API
  5. Ubuntu之命令壁纸
  6. MFC 窗体样式修改
  7. qt 编译的文件没有生效
  8. linux -- Ubuntu下安装和配置Apache2
  9. PHPOffice下PHPWord生成Word2007(docx)使用方法
  10. erlang -- ios apns provider -- erlang 实现