7,759
社区成员
发帖
与我相关
我的任务
分享
Private Sub Command2_Click()
Dim str As String
Add str
//Add (str)
Text1.Text = str
End Sub
Private Sub Add(ByRef RetString As String)
RetString = "awefawefa"
End Sub
Private Sub Command2_Click()
Dim str As String
Add str‘传递的是str的地址,过程修改str的内容,结果正常。
//Add (str)’编译器先构建了一个临时字符串变量strTemp,把str的值赋值过来给strTemp,然后吧strTemp的地址传递给Add过程,Add过程接受的是strTemp的地址,虽然也执行了,但是,str的内容是不会改变的。
Text1.Text = str
End Sub
Private Sub Add(ByRef RetString As String)
RetString = "awefawefa"
End Sub
Option Explicit
Private Sub Command2_Click()
Dim str As String
Add str
'Add (str)
Text1.Text = Pass((str))
MsgBox Pass(str)
End Sub
Private Sub Add(ByRef RetString As String)
RetString = "awefawefa"
End Sub
Private Function Pass(ByVal RetString As String) As String
Pass = RetString
End Function