51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 5082|回复: 9
打印 上一主题 下一主题

[原创] VBS的函数如何设置多个返回值?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2010-3-10 14:26:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如题!!   我现在拿多个返回值是吧所有的返回值用个符号给分割开 然后拿出来再处理字符串的。。  这么多MS有点弱智。。  哪位知道如何更好地办法么。。。  谢谢指教。。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2010-3-10 16:08:32 | 只看该作者
1.返回数组
2.使用dictionary对象来保存并返回(推荐)
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2010-3-10 18:58:07 | 只看该作者

回复 2# 的帖子

能否举例说明 谢谢。。。。  
回复 支持 反对

使用道具 举报

  • TA的每日心情
    奋斗
    2014-12-18 10:31
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    4#
    发表于 2010-3-11 15:02:32 | 只看该作者

    一种简单的方法如下:

    Function   b()   
    b=split("a,b,c,d,e,f" ,",")
    End   Function  
    '以上函数返回数组b,但是引用数组元素不能直接引用,而要以以下方式引用:b()(i) 其中i是数组的下标,如果要循环输出这个数组,那么代码如下
    for i=0 to 5
    msgbox b()(i)
    next
    '或
    for i=0 to 5
    print (b()(i))
    next

    [ 本帖最后由 feiyunkai 于 2010-3-11 15:07 编辑 ]
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    5#
    发表于 2010-3-11 15:13:37 | 只看该作者
    上面的办法都可以
    还有个怪办法:可以对传进来的值赋值,就能把值带出去了,递归时千万别用
    a=1
    b=2
    test 8,a,b
    Function test(q,w,e)
        w = 3
        e = 4
    End Function

    MsgBox a
    MsgBox b
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    6#
    发表于 2010-3-11 16:48:30 | 只看该作者
    我觉得用2楼说的dictionary蛮好用的
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    7#
     楼主| 发表于 2010-3-12 16:43:48 | 只看该作者
    我想知道怎么用dictionary来传。。。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    8#
    发表于 2010-3-12 17:02:53 | 只看该作者
    dictionary相当于动态数组
    Set oDic=Createobject("scripting.Dictionary")
    oDic.Add 1,"a"
    oDic.Add 2,"b"
    上面是写入oDic的
    读出来就是
    oDic(1)结果就是a
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    9#
    发表于 2010-3-12 17:33:39 | 只看该作者

    返回字典对象

    Function test()
    Set dic=CreateObject("scripting.dictionary")
    dic.Add "first",1
    dic.Add "second",2
    Set test=dic
    Set dic=nothing
    End Function

    '调用函数
    Set x=test()
    MsgBox x.item("first")
    MsgBox x.item("second")
    Set x=nothing
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    10#
    发表于 2010-3-15 15:55:06 | 只看该作者
    感觉楼主的方法挺好的,用dictionary的话不就等于再把结果处理了一遍啊。。。
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-26 20:25 , Processed in 0.067144 second(s), 26 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表