社区
VB基础类
帖子详情
如何用VB写一个参数数目可变的函数
masterz
2001-08-16 11:59:52
就像int printf( const char *format [, argument]... );
可以使用任意数目的参数
...全文
710
26
打赏
收藏
如何用VB写一个参数数目可变的函数
就像int printf( const char *format [, argument]... ); 可以使用任意数目的参数
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
26 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
ByTheWay
2001-11-10
打赏
举报
回复
在自制的控件中,可能需要对某个属性传递多个值:
Property Let Test (arg1 As String, arg2 As String, arg3 As Integer)
End Property
'用以下的方法传递参数:
Test(arg1,arg2) = arg3
masterz
2001-11-10
打赏
举报
回复
int wsprintf(
LPTSTR lpOut, // output buffer
LPCTSTR lpFmt, // format-control string
... // optional arguments
);
Amoon
2001-11-10
打赏
举报
回复
Faint~~~~~~!还不会用ParamArray ?!!!!!
masterz
2001-11-10
打赏
举报
回复
无聊的问题,大家灌水吧
lanren_me
2001-08-17
打赏
举报
回复
up
anddee
2001-08-16
打赏
举报
回复
Function Sum(ParamArray intNums() As Variant)
Dim x As Variant
Dim y As Integer
For Each x In intNums
y = y + x
Next x
Sum = y
End Function
hydnoahark
2001-08-16
打赏
举报
回复
masterz的意思指的在C中定义一个函数的参数个数是不固定的,而不是VB中的Option参数的意思
一个变通的方法是你传递一个数组给函数,在数组中包含真正的参数,然后在函数中处理数组以获得真正的参数。
zeng_zhh
2001-08-16
打赏
举报
回复
要不這樣用:
Function Your_Fun( tt() as Variant )
這樣妳想傳几個就几個,當然調用之前要指定要几個.
it_seeker
2001-08-16
打赏
举报
回复
Public Function CallMethod(MethodName As String, ParamArray arg() As Variant)
肯定能满足你的要求
outer2000
2001-08-16
打赏
举报
回复
你只有自己先定义出来。
masterz
2001-08-16
打赏
举报
回复
失望
default参数我也知道
可是default参数和任意数目参数是有区别的
bicom
2001-08-16
打赏
举报
回复
以上都正确!
zeng_zhh
2001-08-16
打赏
举报
回复
可以自定義一個結构作為參數
Type Your_Name
aa as string=''
bb as ingter=0
cc as byte=0
...
end type
function Your_Fun(Your_Pa as Your_Name)
....
end function
ozw
2001-08-16
打赏
举报
回复
Eunction MutiParameter(byval BiXu as string,Optional opt1 as string="A",Optional opt2 as string="B",Optional opt3 as string="C"...)
....
End Function
以上函数中,第一个参数是必须的(也可以不要,去掉就行了)
后面的参数可选,如果想跳过其中一个(使用默认值),调用的时候光写个,跳过就可以了。
applekiller
2001-08-16
打赏
举报
回复
上面是对的。
masterz
2001-08-16
打赏
举报
回复
你这个函数最多使用1个参数
如何任意?请知道printf用法的大虾回复
y1g1y1
2001-08-16
打赏
举报
回复
Option Explicit
Function k(Optional a As Integer = 1)
MsgBox a
End Function
Private Sub Form_Load()
Call k(100)
Call k
End Sub
chenangle
2001-08-16
打赏
举报
回复
呵呵,都可以阿
hydnoahark
2001-08-16
打赏
举报
回复
但是感觉上ParamArray实际就是传递数组的一个变化,不知道理解对不对?
一个例子:
Dim x As Variant
Dim y As Integer
Dim intSum As Integer
Sub Sum(ParamArray intNums())
For Each x In intNums
y = y + x
Next x
intSum = y
End Sub
Private Sub Command1_Click()
Sum 1
List1.AddItem intSum
End Sub
Salas
2001-08-16
打赏
举报
回复
好象楼上说的都是制定默认的参数值,这样才能达到可选,但是这样的参数数目还是需要定义函数时候来制定的
加载更多回复(6)
补丁模块(带源码)InlinePatch,Hook,内存DLL注入等等
下面这个模块是我使用易语言时
写
补丁最常用的
一个
模块(当然很多也是抄的),一开始我觉得bug肯定会很多,放出去肯定又会坑很多人,后来我发现坑坑更健康,当你明白
一个
东西的优缺点之后,你才会更好的选择你所需要...
c#学习笔记.txt
params :params 关键字可以指定在
参数
数目
可变
处采用
参数
的方法
参数
ref :引用传递 out : 7, namespace(名字空间) C#学习笔记(2)【大 中 小】【打印】【加入收藏】【关闭】 【收藏到新浪ViVi】【收藏到365KEY】 ...
2021-2022计算机二级等级考试试题及答案No.3820.docx
9. String与StringBuffer:在Java中,String对象一旦创建就不
可变
,而StringBuffer对象是
可变
的,可以进行追加和修改。 10. JavaBeans编
写
:JavaBeans是Java中的
一个
组件规范,编
写
JavaBeans确实只需要编
写
一个
Java...
基于SolidWorks的注塑模具CAD系统设计.docx
OLE Automation技术允许通过使用高级宏语言或脚本语言在
一个
应用程序内部操作另
一个
应用程序的属性和方法。SolidWorks支持使用
VB
或VC++等语言开发DLL库文件,并且以插件的方式加载。 (3)关于DLL DLL是Windows...
rar压缩软件.rar
它允许指定带有另外
一个
参数
的 't' 变量,例如,ict=字符串 在上面提 及的所有表中执行区分大小
写
的搜索。 例子: 1) rar "ic=first level" -r c:\*.rar *.txt 在 c:\*.rar 压缩文件中的 *.txt 文件执行区分...
VB基础类
7,785
社区成员
197,585
社区内容
发帖
与我相关
我的任务
VB基础类
VB 基础类
复制链接
扫一扫
分享
社区描述
VB 基础类
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章