Hey,
nun ich bin jetzt bei meinem letzten Kapitel in meinem EInsteigerbuch (noch 25 Seiten)
Wollte aber nochmal zurückgreifen auf ByVal und ByRef, was mich ziemlich verwirrt.. =/
ByVal = Veränderung der Werte in der Prozedur/Funktion aber nicht außerhalb.
ByRef = Veränderung der Werte außerhalb & Funktion/Prozedur.
Und siehe:
=
Alter Text 0 0
Alter Text 15 16
Wenn ich das jetzt richtig verstanden habe, hat der ByVal txt Wert sich nur innerhalb der Prozedur geändert aber nicht außerhalb und der Wert , Wert1, Wert2 hat sich wegen ByRef von 0, 0 in 15 und 16 geändert -> also außerhalb.
Richtig?
Aber wo wendet man denn ByVal und ByRef in nützlichen Programmen an?
nun ich bin jetzt bei meinem letzten Kapitel in meinem EInsteigerbuch (noch 25 Seiten)
Wollte aber nochmal zurückgreifen auf ByVal und ByRef, was mich ziemlich verwirrt.. =/
ByVal = Veränderung der Werte in der Prozedur/Funktion aber nicht außerhalb.
ByRef = Veränderung der Werte außerhalb & Funktion/Prozedur.
Und siehe:
VB.NET-Quellcode
- Module Module1
- Sub Test(ByVal txt As String, _
- ByRef Netto As Decimal, _
- ByRef Preis As Decimal)
- txt = "Neuer Text"
- Netto = 15.0
- Preis = 16.0
- End Sub
- Sub Main()
- Dim Text As String = "Alter Text"
- Dim Wert1 As Decimal = 0.0
- Dim Wert2 As Decimal = 0.0
- Console.WriteLine(Text & " " & _
- Wert1.ToString() & " " & _
- Wert2.ToString())
- Test(Text, Wert1, Wert2)
- Console.WriteLine(Text & " " & _
- Wert1.ToString() & " " & _
- Wert2.ToString())
- Console.ReadLine()
- End Sub
- End Module
=
Alter Text 0 0
Alter Text 15 16
Wenn ich das jetzt richtig verstanden habe, hat der ByVal txt Wert sich nur innerhalb der Prozedur geändert aber nicht außerhalb und der Wert , Wert1, Wert2 hat sich wegen ByRef von 0, 0 in 15 und 16 geändert -> also außerhalb.
Richtig?
Aber wo wendet man denn ByVal und ByRef in nützlichen Programmen an?