可以将“参数数组”声明为过程的参数列表中的最后一项。这允许过程接受参数的一组值,而不仅仅是一个值。定义过程时不必知道该组中值的数目。该组由对过程的每次调用单独确定,每次调用可以传递不同数目的值。
有关更多信息,请参见 参数数组。 定义一个可以为其最后参数接受不确定数量的值的过程
过程可以将其参数列表中的最后一个项声明为参数数组。这使它可以接受该参数的不定数量的值,而不是只能接受单个值。
有关更多信息,请参见 参数数组。 调用带有参数数组的过程并省略相应的变量 以常规方法编写过程调用。参数数组必须是最后一个变量。
“递归”过程是指调用自身的过程。通常,这不是编写 Visual Basic 代码的最有效方法。
下面的过程使用递归计算其原始参数的阶乘: Visu
重载过程是指使用相同的名称和不同的参数列表在多个版本中定义某个过程。重载的目的是定义过程的若干个密切相关的版本,而不需要通过名称来区分它们,可通过改变参数列表达到此目的。
可以通过“重载”过程将过程定义为多个版本,每个版本使用相同的名称但使用不同的参数列表。重载的目的是定义过程的若干个密切相关的版本,而不需要通过名称来区分它们,
有关更多信息,请参见 过程重载。 定义过程的多个版本 为要定义的过程的每个版本编写一个
重载过程的优点在于使调用更灵活。调用代码可以获取它需要传递给过程的信息,然后调用单个过程名,无论它传递的是什么参数。
调用定义了多个版本的过程
在调用代码中,确定哪些数据将传递给过程。 以通常方式编写过程调用,用参数列表提供数据。请确保该变
如果过程具有一个或多个 Optional (Visual Basic) 参数,就无法定义与它的任何隐式重载匹配的重载版本。有关更多信息,请参见 重载过程注意事项 中的“可选参数的隐式重载”。
如果过程带有 ParamArray 参数,则无法为参数数组定义带有一维数组的重载版本。有关更多信息,请参见 重载过程注意事项 中的“Implicit Overloads for a ParamArray Parameter”(ParamArray 参数的隐式重载)。
重载带有数量可变的参数的过程
确定过程和调用代码逻辑受
重载过程时,必须对每个重载版本使用不同的“签名”。这通常意味着每个版本必须指定不同的参数列表。有关更多信息,请参见过程重载中的“不同签名”。
您可以在 Sub 过程中重载 Function 过程,反之亦然,只要它们有不同的签名。如果两个重载只是一个有返回值,另一个没有,则无法进行区分。
当 Visual Basic 编译器遇到对在多个重载版本中定义的过程的调用时,编译器必须决定调用哪一个重载。为此,它执行以下步骤:
辅助功能。它消除具有防止调用代码调用的访问级别的任何重载。 参数的数量。它消除所定义的参数数量与调用中提供的数量不同的任何重载。
尽管集合一般是用来处理 Object 数据类型的,但它也可以用来处理任何数据类型。有时用集合存取数据比用数组更加有效。
如果需要更改数组的大小,必须使用 ReDim 语句 (Visual Basic)。当您这样做时,Visual Basic 会创建一个新数组并释放以前的数组以便处置。这需要一定的执行时间。因此,如果您处理的项数经常更改,或者您无法预测所需的最大项数,则可以使用集合来获得更好的性能。 集合不用创建新对象或复制现有元素,它在处理大小调整时所用的执
“对象”是可被视为一个单元的代码和数据的组合。对象可以是一段应用程序,如控件或窗体。整个应用程序也可以是一个对象。
对象是类的实例。若要使用类的成员,首先必须从该类创建一个对象。
从类创建对象
确定要创建对象的类。 编写 Dim 语句 (Visual Basic) 创建一个可向其分配类实例的变量。变量的类型应为所需的类。
如果某个组件已经存在,并经过调试且工作正常,则最好在代码中使用此组件而不是开发另一个功能相同的组件。此类组件通常公开为类。若要重用它,请从该类创建一个对象。
友情链接
|
赞助商广告
|
内容分类
Digg排行
|