• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Delphi語法筆記

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

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 类型进行操作。其它的指运算符:+- 指针加减 ^ 取得指针所指的内容 = <> 

等于 不等于 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Matlab并行编程方法1发布时间:2022-07-18
下一篇:
matlab极坐标图polar中添加箭头发布时间:2022-07-18
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap