Delphi語法筆記
单元 程序头:uses(子句列出了那些链接到程序的单元),block(声明,命令语句) 一个程序包括: • 一个程序头(program heading) • 一个uses 子句(可选),和 • 一个包含声明和命令语句的块(block) 一个单元以单元头(unit heading)开始,后面跟interface、implementation、initialization 和finalization 部分,后面两个部分是可选的 一个uses 子句可以出现在: • 程序或库的工程文件 • 单元的接口部分,和 • 单元的实现部分 在单元声明以及uses 子句中(尤其是在Linux 下),单元名称必须和文件名大小写一致。在其它情 况(比如使用限定符的标志符),单元名是大小写无关的。要避免在单元引用中出现问题,要明确指出单元文件: uses MyUnit in "myunit.pas"; 如果像上面这样在工程文件中明确引用一个单元,在其它源文件中就可以像下面那样简单地引用它, 而不必考虑大小写问题: uses Myunit; uses 子句给编译器提供各模块间的依赖信息,因为这些信息是存于模块自身的,所以,Object Pascal 程序不需要makefile 文件、头文件以及include 预处理指令(这些概念你可能要参考C 语言)。每当一个 工程调入IDE 时,Project Manager 创建一个makefile,但只有在包含多个工程的工程组中才保存这些文 件。 • 单元源文件 ( .pas) • 工程文件 ( .dpr) • 包源文件 ( .dpk) • 窗体文件,扩展名为 .dfm(Delphi)或 .xfm(Kylix) • 资源文件,扩展名为 .res (已经编译的资源文件) • 工程选项文件,扩展名为 .dof(Delphi)或 .kof(Kylix) 要改变程序的图标,可使用Project Options 对话框。 <Leo> 在窗体设计器上右击弹出PopMenu有View as Text项,可察看事件和过程的关联 事件句柄通过窗体文件(Windows 下是 .dfm,Linux 下是 .xfm)赋给指定的事件 空格(#32)和控制符(#0 到#31,其中#13 叫回车符或行的结束符)被称为空白符(blank)。 特殊符号是非文字和数字字符,或这类字符的组合,它们有固定的意义。 ‘[’相当于‘(.’,‘]’相当于‘.)’;‘(*’和‘*)’分别相当于‘{’和‘}’(表示注释)。 ,!(惊叹号)、 ”(双引号)、 %(百分号)、 ?(问号)、 /(反斜杠)、 _(下划线)、 |(通道)和 ~(破折 号)不是特殊符号 $前缀表示一个16 进制数字,比如$8F 标签是一个不超过4 位的阿拉伯数字序列,也就是从0 到9999,打头的0 没有意义 。若单引号中没有内容(’’),它被称为空串(null string)。在一个引用串中,两个连续的单引号(’’)表示一个字 符,也就是单引号本身(’)控制串由一个或多个控制字符(控制符)所组成,每个控制符包含一个#,后跟一个无符号整数(10 进制或16 进制),整数的范围从0 到255,表示相应的ASCII 字符。下面的控制串 #89#111#117 就相当于引用串 ’You’ 运算符包括:@ not ^ * / div mod and shl shr as + - or xor = > < <> <= >= in 和 is。 一些运算符的行为因为传给它们的数据类型不同而不同。比如,not 运算符用于整数时,是对它的 位进行求反运算,而对布尔类型进行逻辑非运算。 除了 ^ ,is 和 in,其它运算可应用在Variant 类型上。 • 不管x 和y 的类型是什么,x/y 的结果总是扩展类型(extended);对其它运算符,只要有一个 运算数是实数类型,它的结果就是扩展类型;另外,只要有一个运算数是Int64 类型,它的结果就是Int64 类型;否则 ,结果就是整数类型。如果一个运算数是整数的子界类型,它就像整数类型一样被对待。 • x div y 的值取整数,也就是取得x/y 的值,然后以0 的方向取得最近的整数。 • mod 运算返回对运算数进行整数除后得到的余数。换句话说,就是x mod y = x - (x div y)*y。 布尔运算符not、and、or 和xor 作用于任何布尔类型的运算数,并返回一个布尔类型的值。 使用 $B 编译器指示字控制计算方式,默认状态是 {$B-},它采用部分计算。要在局部进行完全计 算,在代码中使用 {$B+} 指示字。你也可以在Compiler Options 对话框中选择Complete Boolean Evaluation 选项,此时在整个项目范围使用完全计算。 <Leo>///部分计算 equals 短路计算 in C++/C# 若任何一个运算数是variant 类型,编译器总是进行完全计算(即使在 {$B-} 状态下) Logical (bitwise) operators(位逻辑运算符):not and or xor shl shr • 位反(not)运算的返回类型和运算数相同; • 若and、or 或xor 的运算数都是整数类型,则它的返回类型是包含运算数所有可能的值、且范围最小的预定义(内置)整数类型;• 运算 x shl y 和 x shr y 把 x 的值向左或向右移 y 个位,也就等同于 x 乘或除以 2^y(2的 y 次方),返回类型 和 x 相同。比如,若 N 存储的是01101(10 进制的13),那么 N shl 1 返11010(10 进制26)。注意,y 的值被解释为对 x 所属类型大小(位数)进行模运算,比如,若 x 是一个integer,x shl 40 被解释为 x shl 8,因为integer的大小是32 位(4字节),40 mod 32 等于8。 关系运算符 =、<>、<、>、<= 和 >= 都能对字符串进行操作 + 运算符连接两个字符串 • + 运算符的运算数可以是字符串、packed string(packed arrays of type Char)或字符。但是,若其中一个运算数 是宽字符(WideChar)类型,其它运算数必须是长字符串。 • + 运算符的返回结果和任何字符串类型是兼容的。但是,若运算数都是短字符串或字符,并且它们的组合长度大于255 ,则返回结果取前面的255 个字符。 关系运算符 <、>、<= 和 >= 能对PChar 类型进行操作。其它的指运算符:+- 指针加减 ^ 取得指针所指的内容 = <> 等于 不等于
六六分期app的软件客服如何联系?不知道吗?加qq群【895510560】即可!标题:六六分期
阅读:19165| 2023-10-27
今天小编告诉大家如何处理win10系统火狐flash插件总是崩溃的问题,可能很多用户都不知
阅读:9981| 2022-11-06
今天小编告诉大家如何对win10系统删除桌面回收站图标进行设置,可能很多用户都不知道
阅读:8320| 2022-11-06
今天小编告诉大家如何对win10系统电脑设置节能降温的设置方法,想必大家都遇到过需要
阅读:8690| 2022-11-06
我们在使用xp系统的过程中,经常需要对xp系统无线网络安装向导设置进行设置,可能很多
阅读:8634| 2022-11-06
今天小编告诉大家如何处理win7系统玩cf老是与主机连接不稳定的问题,可能很多用户都不
阅读:9650| 2022-11-06
电脑对日常生活的重要性小编就不多说了,可是一旦碰到win7系统设置cf烟雾头的问题,很
阅读:8617| 2022-11-06
我们在日常使用电脑的时候,有的小伙伴们可能在打开应用的时候会遇见提示应用程序无法
阅读:7994| 2022-11-06
今天小编告诉大家如何对win7系统打开vcf文件进行设置,可能很多用户都不知道怎么对win
阅读:8648| 2022-11-06
今天小编告诉大家如何对win10系统s4开启USB调试模式进行设置,可能很多用户都不知道怎
阅读:7531| 2022-11-06
请发表评论