Es gibt zwei Möglichkeiten, formale Parameter in VB zu deklarieren: eine ist ByVal und die andere ist ByRef. Wenn es sich um ByVal handelt, wird beim Übergeben des Parameters durch die Unterroutine eine Kopie des tatsächlichen Parameters übergeben hat keinen Einfluss auf den ursprünglichen Parameter. Wenn es sich um ByRef handelt, wird der Zeiger des tatsächlichen Parameters an die Unterroutine übergeben, und die Änderung des Parameters durch die Unterroutine wirkt sich auf den Wert des ursprünglichen Parameters aus.
| Dateiname: | ByVal.asp | ByRef.asp |
| Spezifischer Code: | <% SubTestMain() Dim A: A=5 Rufen Sie TestBy(A) auf Response.write A Sub beenden Sub TestBy(ByVal T) T=T+1 Sub beenden callTestMain() %> | <% SubTestMain() Dim A: A=5 Rufen Sie TestBy(A) auf Response.write A Sub beenden Sub TestBy(ByRef T) T=T+1 Sub beenden callTestMain() %> |
| Laufergebnisse: | 5 | 6 |
| abschließend: | Hinweis: Die Deklarationsmethode der T-Variablen in der Unterroutine TestBy(ByVal T) ist ByVal Das Ausführen der Ergebnis-Subroutine hat keinen Einfluss auf den Wert von A | Hinweis: Die Deklarationsmethode der T-Variablen in der Unterroutine TestBy(ByRef T) ist ByRef Der Wert des Laufergebnisses A hat sich durch das Unterprogramm geändert |