如何:定义一个过程的多个版本 (Visual Basic)

可以通过“重载”过程将过程定义为多个版本,每个版本使用相同的名称但使用不同的参数列表。 重载的目的是定义过程的若干个密切相关的版本,而不需要通过名称来区分它们,

有关更多信息,请参见 过程重载 (Visual Basic)

定义过程的多个版本

  1. 为要定义的过程的每个版本编写一个 Sub 或 Function 声明语句。 在每个声明中使用相同的过程名。

  2. 在每个声明中的 Sub 或 Function 关键字前面加上 Overloads (Visual Basic) 关键字。 可以在声明中省略 Overloads,但是只要有一个声明包括了此关键字,就必须在每个声明中都包括该关键字。

  3. 在声明语句后面编写过程代码,以处理调用代码提供的参数与该版本的参数列表匹配的情况。 无需测试调用代码提供的参数, Visual Basic 会将控制权传递到过程的匹配版本。

  4. 根据需要,使用 End Sub 或 End Function 语句终止此过程的各个版本。

示例

下面的示例定义一个 Sub 过程,针对客户的帐户余额发送一个事务。 它使用 Overloads 关键字定义此过程的两个版本,其中一个按客户姓名确定客户,另一个按帐号确定客户。

Overloads Sub post(ByVal custName As String, ByVal amount As Single)
    ' Insert code to access customer record by customer name.
End Sub
Overloads Sub post(ByVal custAcct As Integer, ByVal amount As Single)
    ' Insert code to access customer record by account number.
End Sub

调用代码可以获取作为 String 或 Integer 的客户标识,然后在两种情况下使用相同的调用语句。

有关如何调用 post 过程的这些版本的信息,请参见 如何:调用重载过程 (Visual Basic)

编译代码

请确保每个重载的版本有相同的过程名称和不同的参数列表。

请参见

任务

过程疑难解答 (Visual Basic)

如何:重载带有可选参数的过程 (Visual Basic)

如何:重载参数数量不确定的过程 (Visual Basic)

概念

Visual Basic 中的过程

过程参数和变量 (Visual Basic)

重载过程注意事项 (Visual Basic)

重载决策 (Visual Basic)