The syntax of a uses clause(uses 子句的语法)

来源:互联网 发布:手机淘宝软件安卓旧版 编辑:程序博客网 时间:2024/05/16 10:26

The syntax of a uses clause(uses 子句的语法)
一个 uses 子句由关键字uses、后面跟一个或多个由逗号隔开的单元名,最后是一个分号构成。举例
如下:
uses Forms, Main;
uses Windows, Messages, SysUtils, Strings, Classes, Unit2, MyUnit;
uses SysUtils, Types, Classes, QGraphics, QControls, QForms, QDialogs;
在程序或库(工程)的uses 子句中,任何单元名后面可以跟关键字in 和一个(单元)源文件名:
源文件名用单引号括起来,可包括或不包括路径,路径可以是绝对路径,也可以是相对路径。举例如下:
uses Windows, Messages, SysUtils, Strings in 'C:/Classes/Strings.pas', Classes;
uses
QForms,
Main,
Extra in '../extra/extra.pas';
当要指定单元源文件时,在单元的名称后面包含in…。因为IDE 期望单元名和它所在的源文件名相
同,所以通常没有理由这样做。只有当单元源文件的位置不明确时,你才需要使用in 关键字。比如,当
• 引用的单元文件和工程文件在不同的目录,并且单元所在的目录没有包含在编译器搜索路径、
也不在库搜索路径中
• 编译器的不同搜索路径中有同名的单元
• 你在命令行编译一个控制台程序,并且单元名和它的文件名不同
编译器也根据 in…来判断哪些单元是工程的一部分。在工程文件(.dpr)的uses 子句中,只有后面
包含in 和一个文件名的单元才被认为是工程的一部分,而其它单元只是被工程引用而不属于这个工程。
这种区别对编译程序没有影响,但它影响IDE 工具,比如Project Manager 和Project Browser。
在单元的 uses 子句中,你不能用in 告诉编译器到哪里寻找单元文件。每个单元文件必须位于编译
器搜索路径、或库搜索路径中,或者和引用它的单元文件位于同一路径;而且,单元名必须和它们的单
元源文件同名。