VB中ByVal与ByRef有什么区别
具体这样来理解:
过程答虚中的参数列表,我们称形参
调用过程时的参数列表,我们称实参
在调用桥并时,我们要将实参的值传递给形参,这样过程才能拿这些数据参与清消燃计算并实现一些功能
那么在传递的过程中,就存在这两种传递方式
传值时(ByVal),是先给形参开辟一个临时地址,将实参的内容传入这个临时地址,这样,传递后,形参与实参是在两上不同的地址中,也就是说他们是相互独立的
传址时(ByRef),是直接将实参的地址传递给形参,这样,形参与实参就共用一个地址,所以,形参内容的改变,也直接改变了实参的内容
通过上面的分析,你只要记得:
ByVal是传值调用,也就是说调用的是漏困参数的值,对这个值进行任何操作都不会影响到原参数,或者说调用前的参数和调用后使用的参数是不同的两个参数;
ByRef是传址调用,也就是蔽升说调用的是参数的内存地址,对这个地址进行的任何操作都会直接影响到原参数返并念,或者说调用前的参数和调用后的参数实际上是同一个参数。
ByVal 调用是传递枣缺的是值昌岩肆
ByRef 调用是传递的是引用 类耐轿似于 C 里的地址