(delphi11最新学习资料) Object Pascal 学习笔记---第5章第1节(开放式数组形参)

5.1.5 开放式数组形参

​ 对于数组的使用有一个非常特殊的场景,即用于向函数传递一个灵活的参数列表。除了直接传递数组外,本节和下一节还将解释两种特殊的语法约定。在上一段代码中的 Format 函数就是一个使用了这种约定的函数,它的第二个参数接受一个就地定义的数组值。

​ 与 C 语言(以及其他一些基于 C 语法的语言)不同,在传统的 Pascal 语言中,函数或过程总是有固定数量的参数。然而,在 Object Pascal 中,有一种方法可以使用就地定义的数组向例程传递不同数量的参数,这种技术被称为开放数组参数。

注解:从历史上看,开放数组参数早于动态数组,但如今这两种功能的工作方式非常相似,几乎无法区分。这就是为什么我在讨论动态数组后才介绍开放数组参数。

​ 定义开放式数组形参与定义类型化动态数组类型的基本相同,但以const指示符作为前缀。 这意味着您可以指定参数的类型,但不需要指出数组要有多少个该类型的元素。 下面是这样一个定义的例子,摘自OpenArray的示例:

function Sum(const A: array of Integer): Integer;
var
  I: Integer;
begin
  Result := 0;
  for I := Low(A) to High(A) do
    Result := Result + A[I];
end;

​ 您可以通过传递一个整数常量表达式的数组(其中也可以包含变量,作为用于计算表达式各部分的值)来调用该函数:


                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值