由于前一阵子的学习非常紧张,所以到现在才整理这部分的内容。
Delphi是基于Object Pascal来开发的,当然现在人们更加喜欢叫它为Delphi语言了。顾名思义,Object Pascal就是面向对象的Pascal语言,它是一门真正的面向对象的语言而不像VB只是一种基于对象的东西。它和Basic的很多语法比较像,比如说if then,begin end等,但是它是强类型的语言,类型的转换都有严格的要求。同时它的每一个语句的结束都是以";"来结束的,个人觉得这个";"的使用位置比较讲究的:当一个语意没有完成的时候,并不能用它:比如说在if then语句中
if a=b then
begin
……
end else
begin
……
end;
这样书写才是正确的,不能在前面的end后面加上";"号。当整个程序完成后,才在最后的一个end后面加上一个"."。通过缩进和这些符号的使用,让一个程序像一篇文章那样有章有节,结构清晰。
在Delphi中,代码是以Unit为单位的,一个Unit的结构如下:
unit 单元名//每一个单元都必须在开头有这样一条语句,以标识单元的名称,单元的名称必须和文件名相匹配
interface //在unit语句后的源代码必须是interface语句。在这条语句和implementation语句之间是能被程序和其他单元所共享的信息。一个单元的interface部分是声明类型、常量、变量、过程和函数的地方,这些都能被主程序和其他单元调用。这里只能有声明,而不能有过程体和函数体。interface语句应当只有一个单词且在一行:
interface
implementation //它在interface部分的后面。虽然单元的implementation包含了过程和函数的源代码,但它同时也允许在此声明不被其他单元所调用的任何数据类型、常量和变量。implementation是定义在interface中声明的过程和函数的地方,implementation语句只有一个单词并且在一行上:
implementation
…………{程序体}
…………
一个单元能可选地包含其他两个部分:
initialization部分,在单元中它放在文件结尾前,它包含了用来初始化单元的代码,它在主程序运行前运行并只运行一次。
finalization部分,在单元中它放在initialization和end之间。
end.最终结束
不同的单元间可以用uses来引用。
类型的定义是通过type来定义的,这个在interface和implementation之间,例如:
type
TMyType = record //定义一个结构体,和C里面的结构体是相对应的
a,
b :Integer
end;
TMyClass = class(ParentClass) //定义一个对象,里面的ParentClass就是要继承的父对象名,如果没有继承,就用Tobject或是为空,面向对象的内容非常多,但是和其它的语言是相对应的,所以这里不讲了
end;
在Pascal里面,是允许在一个函数或是方法里面多层嵌套着放函数的,这些被嵌套的函数,就是这些主函数的子函数,只能被这个主函数里面调用。所以有一些函数,只是被主函数,同是为了转移的方便,可以放在里面。函数的格式如下:
procedure proName(参数);//有点类似于VB里面的SUB它没有返回值
{
在这里面还可以放嵌套的函数
}
var
变量列表;
begin
程序体
end;
function proName(参数);返回值类型//有点类似于VB里面的SUB它没有返回值
{
在这里面还可以放嵌套的函数
}
var
变量列表;
begin
程序体
result := 返回的结果
end;
在Object Pascal中的内容,由于是一门语言,不可能是这么几句话可以说明白的,所以我在这里面只写了一个概要和一些经验。