Freigeben über


Unterschiede zwischen veränderbaren und nicht veränderbaren Argumenten (Visual Basic)

Wenn Sie eine Prozedur aufrufen, übergeben Sie i. d. R. mindestens ein Argument an die Prozedur. Jedes Argument entspricht einem zugrunde liegenden Programmierelement. Sowohl die zugrunde liegenden Elemente als auch die Argumente selbst können veränderbar oder nicht veränderbar sein.

Veränderbare und nicht veränderbare Elemente

Ein Programmierelement kann entweder ein veränderbares Element sein, dessen Wert sich ändert, oder ein nicht veränderbares Element, dessen Wert fest bleibt, nachdem es erstellt wurde.

In der folgenden Tabelle werden veränderbare und nicht veränderbare Programmierelemente aufgeführt.

Veränderbare Elemente

Nicht veränderbare Elemente

Lokale Variablen (deklariert in Prozeduren) einschließlich Objektvariablen, außer schreibgeschützten Variablen

Schreibgeschützte Variablen, Felder und Eigenschaften

Felder (Membervariablen von Modulen, Klassen und Strukturen), außer schreibgeschützten Feldern

Konstanten und Literale

Eigenschaften, außer schreibgeschützten Eigenschaften

Enumerationsmember

Arrayelemente

Ausdrücke (auch wenn deren Elemente veränderbar sind)

Veränderbare und nicht veränderbare Argumente

Einem veränderbaren Argument liegt ein veränderbares Element zugrunde. Der Aufrufcode kann jederzeit einen neuen Wert speichern. Wenn eine ByRef (Visual Basic)-Übergabe des Arguments erfolgt, kann der Code in der Prozedur das zugrunde liegende Element im Aufrufcode ebenfalls ändern.

Einem nicht veränderbaren Argument liegt entweder ein nicht veränderbares Element zugrunde, oder es wird mit ByVal (Visual Basic) übergeben. Die Prozedur kann das zugrunde liegende Element im Aufrufcode nicht ändern, auch wenn es sich um ein veränderbares Element handelt. Wenn es sich um ein nicht veränderbares Element handelt, kann es vom Aufrufcode selbst nicht geändert werden.

Die aufgerufene Prozedur ändert gegebenenfalls die Kopie eines nicht veränderbaren Arguments; die Änderung hat jedoch keinen Einfluss auf das im Aufrufcode zugrunde liegende Element.

Siehe auch

Aufgaben

Gewusst wie: Übergeben von Argumenten an eine Prozedur (Visual Basic)

Gewusst wie: Ändern des Werts eines Prozedurarguments (Visual Basic)

Gewusst wie: Schützen eines Prozedurarguments gegen Wertänderungen (Visual Basic)

Gewusst wie: Erzwingen, dass ein Argument als Wert übergeben wird (Visual Basic)

Konzepte

Prozeduren in Visual Basic

Parameter und Argumente von Prozeduren (Visual Basic)

Übergeben von Argumenten als Wert und als Verweis (Visual Basic)

Unterschiede zwischen dem Übergeben von Argumenten als Wert und als Verweis (Visual Basic)

Übergeben von Argumenten nach Position und Name (Visual Basic)

Weitere Ressourcen

Datentypimplementierung (Visual Basic)