回 帖 发 新 帖 刷新版面

主题:[HELP]关于BYVAL

请教一下, 那个BYVAL有什么用?
DECLARE SUB cc(BYVAL n AS INTEGER)和DECLARE SUB cc(n AS INTEGER)

回复列表 (共5个回复)

沙发

这是VB里的关键字,
意思是"按值传递参数"

板凳

Thanks.明白了.那下面这是怎么回事?

DECLARE SUB add (x AS INTEGER)

SUB add (x AS INTEGER)
  x = x + 1
END SUB

编译生成add.qlb, 再用qbx /l add.qlb进入QB.

DEFINT A-Z
c = 1
CALL add(c)
PRINT c

为什么还是1? 好象必须把add这个过程放在程序里, 在qlb里就不行.
请赐教!

3 楼

我试过了,
得到的结果是2
没发现哪里有什么问题。

4 楼

我昨天晚上试了, 如果程序前面加上一句: DECLARE SUB add ALIAS "add" (x AS INTEGER) 就没问题了, 为什么会这样?

5 楼

喔,对了,我是加了这一句.

这一行是对你需要的函数进行声明
告诉程序,这个库里面的函数你需要用到,
这样子,程序才知道到哪里去找函数来给你调用.

我来回复

您尚未登录,请登录后再回复。点此登录或注册