如何:调用参数数量不确定的过程

更新:2007 年 11 月

过程可以将其参数列表中的最后一个项声明为参数数组。这使它可以接受该参数的不定数量的值,而不是只能接受单个值。

有关更多信息,请参见 参数数组

调用带有参数数组的过程并省略相应的变量

  1. 以常规方法编写过程调用。参数数组必须是最后一个变量。

  2. 终止带有倒数第二个参数的参数列表。参数数组为可选,且所有前面的参数都是必需的。

    - 或 -

    提供 Nothing 关键字用作该参数数组的变量。

  3. Visual Basic 将空一维数组传递给过程以用于参数数组。

调用带有参数数组的过程并提供变量列表

  1. 以常规方法编写过程调用。参数数组必须是最后一个变量。

  2. 为参数数组提供任意数量的变量,以逗号分隔。每个参数的数据类型都必须可以隐式转换成 ParamArray 元素类型。

  3. Visual Basic 将一维数组传递给过程,其中包含您提供的所有值。

调用带有参数数组的过程并提供变量的数组

  1. 以常规方法编写过程调用。参数数组必须是最后一个变量。

  2. 对于参数数组,请提供元素类型与参数数组的元素类型相同的一维数组。

  3. Visual Basic 将数组传递给过程。

示例

下面的示例演示在 如何:定义参数数量不确定的过程 中定义的对 studentScores 过程的典型调用。

Call studentScores("George")


...


Call studentScores("Anne", "10", "26", "32", "15", "22", "24", "16")
Call studentScores("Mary", "High", "Low", "Average", "High")
Dim JohnScores() As String = {"35", "Absent", "21", "30"}
Call studentScores("John", JohnScores)

第一个调用完全省略参数数组,并仅提供所需的第一个变量。 studentScores 过程将此调用视为传递一个空数组。

第二个和第三个调用向参数数组提供了不同长度的变量列表。每个这样的列表都作为值数组传递。

第四个调用将数组传递给参数数组。

请参见

概念

过程参数和变量

通过值和通过引用传递参数

通过位置和通过名称的参数传递

可选参数

过程重载

Visual Basic 中的类型检查

参考

Optional (Visual Basic)

ParamArray

ByVal

UBound 函数 (Visual Basic)