用户登录
用户注册

分享至

Asp中通过简单的例子理解下ByVal和ByRef的用法

  • 作者: 其实我不想把名字取得那么长那么长那么
  • 来源: 51数据库
  • 2020-08-12
VB中形参声明有两种方式,一种是ByVal,一种是ByRef,如果是ByVal则在传递参数时将实参的一个拷贝传递给子程序,子程序对参数的修改不会影响原有参数。如果是ByRef,则将实参的指针传递给子程序,子程序对参数的修改会影响原有参数的值。

文件名称:

ByVal.asp

ByRef.asp

具体代码:

<%
Sub TestMain()
Dim A : A=5
Call TestBy(A)
Response.write A
End Sub
Sub TestBy(ByVal T)
T=T+1
End sub
call TestMain()
%>

<%
Sub TestMain()
Dim A : A=5
Call TestBy(A)
Response.write A
End Sub
Sub TestBy(ByRef T)
T=T+1
End sub
call TestMain()
%>

运行结果:

5

6

    :

注意:子程序TestBy(ByVal T)T变量声明方式是ByVal

运行结果子程序没有影响到A的值

注意:子程序TestBy(ByRef T)T变量的声明方式是ByRef

运行结果A的值通过子程序发生了改变

看完了,上面的比较就知道说明意思了吧。
软件
前端设计
程序设计
Java相关