[工学]delphi教程22

[工学]delphi教程22

ID:40236812

大小:342.00 KB

页数:45页

时间:2019-07-27

[工学]delphi教程22_第1页
[工学]delphi教程22_第2页
[工学]delphi教程22_第3页
[工学]delphi教程22_第4页
[工学]delphi教程22_第5页
资源描述:

《[工学]delphi教程22》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、Delphi数据库程序设计(3)ObjectPascal语言基础ObjectPascal的语句ObjectPascal的数据类型变量与常量过程与函数面向对象的程序设计单元文件的结构异常与异常处理程序调试简介Delphi第二部分ObjectPascal语言基础2.5过程与函数过程与函数都是能够完成某个(或某些)特定功能的程序段,它们在语法功能上相当于一个简单语句,即凡是语法要求简单语句的地方,都可以使用过程或函数。所不同的是,过程与函数都是独立的程序块。在开发Delphi应用程序时,所需的大部分代码都编写在事件处理过程中,但有时仍然需要编

2、写不是事件处理过程的函数或过程。例如,可以把在多个事件处理过程中用得到的语句编写成过程,然后任何事件处理过程、过程、函数都可以象调用已经存在的系统函数一样直接调用它。这样做有两个好处:一是只需编写一次代码,二是程序代码会比较简洁。另外,还可以将由一个工程或多个工程共享的过程与函数封装在一个单元里,供其他单元和项目调用。这些共享的过程与函数的调用格式在单元的接口中(interface)需要说明。2.5.1过程与函数的定义DelphiProcedure过程名(参数及其类型说明)Var变量说明begin过程体语句end;function函数名

3、(参数及其类型说明):函数返回值的类型Var变量说明begin过程体语句result:=返回的函数值;end;区别一:区别二:(1)关于参数参数位于括号里面,每一个参数以分号分隔。例如:procedurevalidateDate(Day:Integer;month:Integer;Year:Integer);也可以将相同类型的参数组合在一起,则上述过程写作:procedureValidateDate(Day,Month,Year:Integer);函数在标题中还多了一项:返回值的类型。下面是一个返回值为Double型的函数标题:func

4、tionCalculateInterest(principal,InterestRate:Double):Double;(2)过程和函数中的类型说明一个过程或函数程序模块也含有说明部分和语句部分。说明部分可以包括类型说明、变量说明、常量说明等。一般来讲,在过程和函数中,任何类型说明都在变量说明之前,而任何变量说明都在常量之前。但是,只要遵从说明必须在过程与函数的标题之后,而且在程序代码之前,即是有效的。Delphi过程或函数的语句部分由begin开始,end结束。函数需要一个返回值。可以将返回值赋给函数名称,也可以将返回值赋给Resul

5、t变量。下面的例程将返回值赋给函数名称:functionCalculateInterest(Principal,InterestRate:Double):Double;beginCalculateInterest:=Principal*InterestRate;end;将返回值赋给Result变量也是可以的,则上面的程序改为:Result:=Principal*InterestRate;下面是这个函数的调用方法:InterestEarned:=CalculateInterest(2000,0.012);(3)过程和函数的语句部分2.5.

6、2参数传递在调用过程和函数时,实参与形参的结合有两种方式:值传送与地址传送。所谓值传送,就是实参与形参各分配不同的内存单元,在调用子程序时,仅仅是把实参的值复制到对应的形参中。无论形参变量的值在子程序中是否改变,都不会影响实参变量值。如果在定义子程序时,在形参变量之前加上var,就是采用地址传送方式。在执行子程序时,形参本身并不分配独立的内存单元,而只是指向实参。换句话说,实参向形参传递的不是它的值,而是其内存地址。由于实参与形参实际上共用一个内存单元,所以形参的值在子程序中的改变也就是改变了实参的值。Procedureexchange

7、(a,b:integer);Procedureexchange(vara,b:integer);值传递地址传递在开发Delphi应用程序时,所需的大部分代码都编写在事件处理过程中,但有时仍然需要编写不是事件处理过程的函数或过程。例如,可以把在多个事件处理过程中用得到语句编写成过程,然后任何事件处理过程、过程、函数都可以象调用已经存在的系统函数一样直接调用它。这样做有两个好处:一是只需编写一次代码,二是程序代码会比较简洁。这个练习中,将制做一个简单的密码校验界面。程序将判断用户输入的用户名和密码是不是预设的值,如果输入为空,程序将出现相关

8、提示。其中“判断用户输入是否为空”即是“一个不是事件处理过程的函数”。通过这个练习,我们将了解delphi中的自定义函数及自定义过程的编写,同时还将学习屏蔽密码输入的方法。应用程序一启动,第一个出现在用户面

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。