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

可通过重载在多个版本中定义一个过程,并为每个版本使用相同的名称,但使用不同的参数列表。 重载的目的是定义某个过程的多个密切相关的版本,而无需按名称区分这些版本。

有关更多信息,请参见 Procedure Overloading

定义一个过程的多个版本

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

  2. 在每个声明中,在 SubFunction 关键字前面加上 Overloads 关键字。 可选择在声明中省略 Overloads,但如果将其包含在任何声明中,则必须在每个声明中包含它。

  3. 在每个声明语句之后,编写过程代码来处理调用代码提供与该版本的参数列表相匹配的参数的特定情况。 无需测试调用代码提供了哪些参数。 Visual Basic 会将控制传递给过程的匹配版本。

  4. 根据需要,用 End SubEnd 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

调用代码可以获取客户标识作为 StringInteger,然后在任一情况下使用相同的调用语句。

有关如何调用 post 过程的这些版本的信息,请参阅如何:调用重载过程

编译代码

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

另请参阅