文件名称:输出方式-京东应用架构设计
文件大小:7.56MB
文件格式:PDF
更新时间:2024-06-30 04:57:15
Delphi 2010 语法
(4). 输出方式 以 out关键字声明的参数将以输出而非输入方式传递。举例说明,以 out声明的参数 像是饮料生产线上的空瓶,经过不断的传递及加工,开始时传入的空瓶被装满饮料后传出 生产线。很明显,我们需要的是饮料而非空瓶,空瓶仅仅只是为了装饮料而被传入生产 线。 看一下例子: function sample1(s:string):integer; begin result := length(s); //函数返回字符串 S的长度 end; 此函数非常简单:传入一个字符串,函数将并返回此字符串的长度。利用 out参数可将其 改成以下形式: procedure sample2(s:string; out leng:integer); begin leng := length(s); end; 分别调用 sample1与 sample2: var i,n:integer; s:string; begin s := 'delphi'; i := sample1(s); sample2(s, n); end; 运行完毕后,i与 s的值相等,均为 6。 看到这里,读者一定发现:即然可以使用函数返回特定值,为何还要使用 out参数? 理由:函数只能返回一个值,而有时需要同时返回多个值。而使用 out参数就可以同时返 回多个值。这种特性使得 out参数在编写 COM程序时非常方便。 就使用上而言,var参数与 out参数完全一样,var参数也可存储返回值,二者唯一的 区别在于:将一个变量作为 out参数传入例程之前,系统会自动清空变量原来的值;而 var方式则没有这种处理。例如下面的示例中,var_sample没有进行任何操作,但将 str 作为参数调用 var_sample后,str却变成了空值: