VB中Byval和Byref区别
ByVal指的是按值传递,程序会将被传递的参数的值拷贝一份存在一个临时区域中参与调用过程的执行,在代码中即使使用诸如a=a+1之类改变参数值的语句,实际只改变了它的副本内容,而并没有真正改变a的内容;
与之相对应的是ByRef,是指按地址传递参数,是缺省的方式。在被调用时传递给调用函数的是其地址,这样一来,在调用函数中对这个参数做出的任何改变都直接改变了它的值,程序会根据参数存放的地址直接对它进行修改,即使跳出被调函数或过程这个改变还是永久的。我们知道,变量在内存中的地址是唯一的,是由程序动态分配的,除非你释放并且系统回收。