vb里面怎么定义传出参数,如:
public sub out( ii as long, ss as string )
  ii = 100
  ss = "output"
end subdim i as long
dim s as string
out(i,s)
MsgBox i
MsgBox ss这样行吗?

解决方案 »

  1.   


    public Function out(byref ii as long,byref ss as string ) 
      ii = 100
      ss = "output"
    end subdim i as long
    dim s as string
    out(i,s)
    MsgBox i
    MsgBox ss
      

  2.   

    你的已经是对的. 
    因为VB中默认的传值方式就是byref(也就传地址)如果只想传值就要在参数之前加上byval
      

  3.   

    不对!应该是下面这样:
    Dim i As Long
    Dim s As String
    Private Sub Form_Load()
    out i, s
    MsgBox i
    MsgBox s
    End Sub
    Public Sub out(ii As Long, ss As String)
      ii = 100
      ss = "output"
    End Sub
    结果是i=100,s="output"注意调用过程不要括号,这样写就可以
    out i, s
    如果非要括号,就这样:
    call out (i, s)
      

  4.   

    我终于明白了,out(i,s)不能改变值,out i,s才可以改变,还有这种区别哦