Board logo

标题: [已解决]VBS同时调用过程和函数其执行顺序是? [打印本页]

作者: wc726842270    时间: 2011-1-7 02:37     标题: [已解决]VBS同时调用过程和函数其执行顺序是?

先看一下代码,感觉比较有意思
  1. Option Explicit
  2. greetuser getusername
  3. Sub greetuser(strusername)
  4.   MsgBox "hello,"&strusername&_
  5.          ".welcome to our sript"
  6. End Sub
  7. Function Getusername
  8.   Getusername=1
  9. End function
复制代码
其实问题主要在于"greetuser getusername"一行,同时调用了两个没有参数的过程,但为什么会先执行getusername呢?

[ 本帖最后由 wc726842270 于 2011-1-9 00:52 编辑 ]
作者: powerbat    时间: 2011-1-7 23:01

极度怀疑。。。

Sub greetuser(strusername)
这个过程明明要一个参数的。

对于函数调用最好加括号,这样大家看起来都很轻松,不是吗?
作者: wc726842270    时间: 2011-1-8 23:19     标题: 回复 2楼 的帖子

就因为知道所以才奇怪啊。而且关键是没用(),如果是自已写的当然会用了,只是这种方法从来就没想过,如果说greetuser把getusername当作一个参数来用,也是可以理解的。

[ 本帖最后由 wc726842270 于 2011-1-8 23:37 编辑 ]
作者: powerbat    时间: 2011-1-9 07:49

printf ("%c",getchar());
类似这种代码你都不理解吗?
VBS只是可以省略括号。

Sub greetuser(strusername)
这个过程定义的明明白白,需要一个参数。
getusername函数的返回值就是传给它的参数。
作者: wc726842270    时间: 2011-1-13 11:16     标题: 回复 4楼 的帖子

实在不好意思了,当时是上了24小时的班,又看了一天的电子书,问的问题也就傻了一些,其实就是一个调用过程的一种用法,当时实在是太懵了




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2