注册 登录
编程论坛 ASP技术论坛

call 怎么用

liyang0430 发布于 2010-05-06 09:44, 1697 次点击
asp   中call是什么意思,怎么用?
7 回复
#2
golmjie2010-05-06 09:59
call 是调用函数!   call 你自已写的函数!
#3
gupiao1752010-05-06 11:25
ASP的call 具体用法如下:
<%
function add(a,b)'定义一个函数,并输出2个参数的和!
num=a+b
response.write num
end function
call add(1,3)
response.write"<br>"'输出一个BR方便区别两个用法(函数和过程的)!
sub add(a,b)'定义一个过程,并输出2个参数的和!
num=a+b
response.write num
end sub
add 1,3 '这里使用call关键字也可以,比如:call add(1,3),但是参数必须加括号!
'在调用过程时,不必使用 Call 关键字。然而,如果使用 Call 关键字调用要求参数的过程,则必须用括号将参数括起来。如果省略 Call   
'关键字,那么必须也同时省略参数两边的括号。使用 Call 语法调用内部函数或使用用户自定义函数,函数返回值都会被放弃。
%>
#4
gupiao1752010-05-06 11:36
虽然很多情况下都可以不使用CALL,但是写ASP代码建议都用上CALL,最起码这样能使代码的可读性更强些!看起来更直观些!
#5
zzy_4202010-05-06 22:44
Call 语句

描述
将控制权传递给 Sub 或 Function 过程。
语法
[Call] name [argumentlist]
Call 语句语法有以下部分:

部分 描述
Call 可选项关键字。如果指定此关键字,则必须用括号把 argumentlist 括起来。例如:
Call MyProc(0)
 
name 必选项。要调用的过程名。
argumentlist 可选项。传递给过程的变量、数组或表达式列表,用逗号分隔每一项。


说明
在调用过程时,不必使用 Call 关键字。然而,如果使用 Call 关键字调用要求参数的过程,则必须用括号将 argumentlist 括起来。如果省略 Call 关键字,那么必须也同时省略 argumentlist 参数两边的括号。使用 Call 语法调用内部函数或使用用户自定义函数,函数返回值都会被放弃。
Call MyFunction("Hello World")

Function MyFunction(text)
 MsgBox text
End Function
#6
zzy_4202010-05-06 22:47
一般来说
调用过程sub的用 call

调用函数function 的就不用

#7
zzy_4202010-05-06 22:47
以我个人的经验,我只对Sub过程使用Call,这样可以明显发现哪里是调用Sub过程了,这样比直接调用过程更明显易读些。举个例子:
Sub ConnDataBase(byVal DBPath, byRef DataConn, byRef DataCmd, byRef RS)
 '....
End Sub

不使用Call调用可以直接使用 ConnDataBase myDB,DataConn,DataCmd,RS
使用Call的方法如下: Call ConnDataBase(myDB,DataConn,DataCmd,RS)

带了Call以及括号比较容易识别Sub过程的调用。

关于安全性,用不用Call都完全一样。


#8
zzy_4202010-05-06 22:47
还是用call吧,无论是function还是SUB,那样代码看起来更清晰。
1