该是VB的BUG吧!

Sub clac(ByRef str As String)
str = str + "changed"
End Sub


假如有 dim str as string = "hello"

calc(str)
calc str
call calc(str)
最终str结果一样吗?
居然不同!!!!FT
最近开始检查VB代码,发现的一个诡异问题,.NET无关,就当非技术类吧...
不过,可以在VB.NET里面做个试验,谁用VB.NET,帮帮忙:)
经测试,该问题在VB.NET下不存在,完全符合引用传递的规则 该问题也是对我们的一个提示:程序员容易犯一个错误,就是想当然.有许多东西需要写代码来论证的 :)

你可能感兴趣的:(bug)