VB几种函数参数传递方法,Variant,数组,Optional,ParamArray
来源:互联网 发布:淘宝退款卖家拒绝几次 编辑:程序博客网 时间:2024/05/17 20:45
VB几种函数参数传递方法,Variant,数组,Optional,ParamArray
一) 过程的参数被缺省为具有 Variant 数据类型。
1)ByRef按 地址传递参数在 VB 中是缺省的
按地址传递参数后,过程返回的也是地址,函数中改变了的变量值也将带回来。
2)ByVal 关键字指出参数是按值来传递的
按值传递参数时,传递的只是变量的副本。如果过程改变了这个值,则所作变动只影响副本而不会影响变量本身。
二)使用不定数量的参数 ParamArray
一般说来,过程调用中的参数个数应等于过程说明的参数个数。可用 ParamArray 关键字指明,过程将接受任意个数的参数。于是可以这样来编写计算总和的 Sum 函数:
Dim x As Integer,y As Integer,intSum As Integer
Sub Sum (ParamArray intNums ())
For Each x In intNums
y = y + x
Next x
intSum = y
End Sub
调用方法 Sum 1, 3, 5, 7, 8
三)Optional 关键字,使用可选的参数
Optional 关键字,就可以指定过程的参数为可选的。如果指定了可选参数,则参数表中此参数后面的其它参数也必是可选的,并且要用 Optional 关键字来声明。
Dim strName As String,varAddress As Variant
Sub ListText (x As String, Optional y As Variant)
List1.AddItem x
If Not IsMissing (y) Then
List1.AddItem y
End If
End Sub
调用1: Call ListText("yourname") '未提供第二个参数。
2: Call ListText("yourname",12345)
在未提供某个可选参数时,实际上将该参数作为具有 Empty 值的变体来赋值。
上例说明如何用 IsMissing 函数测试丢失的可选参数。
四)Optional 声明arr()数组与Variant 方法
通常用Optional arr() as TypeName 为非法
此时可声明函数变量为 Optional arr as Variant
调用时可使用Fun(arr())
此时函数中可用LBound(arr)的UBound(arr)确定数组边界
一) 过程的参数被缺省为具有 Variant 数据类型。
1)ByRef按 地址传递参数在 VB 中是缺省的
按地址传递参数后,过程返回的也是地址,函数中改变了的变量值也将带回来。
2)ByVal 关键字指出参数是按值来传递的
按值传递参数时,传递的只是变量的副本。如果过程改变了这个值,则所作变动只影响副本而不会影响变量本身。
二)使用不定数量的参数 ParamArray
一般说来,过程调用中的参数个数应等于过程说明的参数个数。可用 ParamArray 关键字指明,过程将接受任意个数的参数。于是可以这样来编写计算总和的 Sum 函数:
Dim x As Integer,y As Integer,intSum As Integer
Sub Sum (ParamArray intNums ())
For Each x In intNums
y = y + x
Next x
intSum = y
End Sub
调用方法 Sum 1, 3, 5, 7, 8
三)Optional 关键字,使用可选的参数
Optional 关键字,就可以指定过程的参数为可选的。如果指定了可选参数,则参数表中此参数后面的其它参数也必是可选的,并且要用 Optional 关键字来声明。
Dim strName As String,varAddress As Variant
Sub ListText (x As String, Optional y As Variant)
List1.AddItem x
If Not IsMissing (y) Then
List1.AddItem y
End If
End Sub
调用1: Call ListText("yourname") '未提供第二个参数。
2: Call ListText("yourname",12345)
在未提供某个可选参数时,实际上将该参数作为具有 Empty 值的变体来赋值。
上例说明如何用 IsMissing 函数测试丢失的可选参数。
四)Optional 声明arr()数组与Variant 方法
通常用Optional arr() as TypeName 为非法
此时可声明函数变量为 Optional arr as Variant
调用时可使用Fun(arr())
此时函数中可用LBound(arr)的UBound(arr)确定数组边界
0 0
- VB几种函数参数传递方法,Variant,数组,Optional,ParamArray
- 数组参数传递的几种方法
- 数组作为函数参数并传递数组元素个数的几种有效方法
- VB传递数组参数
- c++中关于数组作为函数参数并传递数组元素个数的几种有效方法的讨论
- c++中关于数组作为函数参数并传递数组元素个数的几种有效方法的讨论
- c++中关于数组作为函数参数并传递数组元素个数的几种有效方法的讨论
- python中函数参数传递的几种方法
- python中函数参数传递的几种方法
- python中函数参数传递的几种方法
- 数组作为函数参数的传递方法
- 二维数组 作为函数参数 传递方法
- vb函数参数的传递
- vb函数参数的传递
- 进程间通信方法:接口Variant封装包参数传递
- 在COM方法中用VARIANT类型传递数组数据
- 使用VARIANT传递数组的方法及步骤
- 使用VARIANT传递数组的方法及步骤
- Android 热补丁技术的探索与简单实战----Qzone方案
- 大图加载+软引用+LruCache
- 【Codeforces自我陶醉水题篇~】(差17C code....)
- 算法+数据结构的本质
- Hust oj 1795 发现王国之旅(最大生成树)
- VB几种函数参数传递方法,Variant,数组,Optional,ParamArray
- HDU 3415 Max Sum of Max-K-sub-sequence(长度不超过k的最大连续子序列和,单调队列)
- 虚拟机类加载机制
- TCP/IP TIME_WAIT状态原理
- Android的软件盘在在点击“enter键”后有事件响应
- Codeforces 348A:Mafia(二分+思维)
- HDU2147之打表找规则
- MySQL结构优化技术之:掌控数据的结构
- 104. Maximum Depth of Binary Tree