Freigeben über


Die <Variablenname>-Variable wird als Verweis übergeben, bevor ihr ein Wert zugewiesen wird

Aktualisiert: November 2007

Fehlermeldung

Die <Variablenname>-Variable wird als Verweis übergeben, bevor ihr ein Wert zugewiesen wird. Zur Laufzeit kann eine NULL-Verweisausnahme auftreten
Variable '<variablename>' is passed by reference before it has been assigned a value. A null reference exception could result at run time.

In einem Prozeduraufruf wird eine Variable als Argument an einen ByRef-Parameter übergeben, bevor der Variablen ein Wert zugewiesen wurde.

Wenn einer Variablen niemals ein Wert zugewiesen wurde, enthält sie den Standardwert für ihren Datentyp. Wenn der Datentyp ein Verweistyp ist, lautet dieser Standardwert Nothing (Visual Basic). Das Lesen einer Verweisvariablen mit dem Wert Nothing kann unter bestimmten Umständen eine NullReferenceException verursachen.

Durch das Übergeben eines Arguments an eine Prozedur mit ByRef wird die dem Argument zugrunde liegende Variable für mögliche Änderungen durch die Prozedur verfügbar gemacht.

Standardmäßig ist diese Meldung eine Warnung. Weitere Informationen über das Ausblenden von Warnungen bzw. über die Behandlung von Warnungen als Fehler finden Sie unter Konfigurieren von Warnungen in Visual Basic.

Fehler-ID: BC42030

So beheben Sie diesen Fehler

  • Wenn die Prozedur der Variablen einen Wert über das ByRef-Argument zuweisen soll und es keine Rolle spielt, ob die Variable bereits einen Wert aufweist, ist keine Maßnahme erforderlich.

  • Wenn die Prozedur gemäß ihrer Logik das Argument liest, bevor sie ihr einen Wert zuweist, und wenn die Variable ein Werttyp ist, stellen Sie sicher, dass die Logik der Prozedur nicht davon abhängt, ob die Variable ihren Standardwert aufweist.

  • Wenn die Prozedur gemäß ihrer Logik das Argument liest, bevor sie ihr einen Wert zuweist, und wenn die Variable ein Verweistyp ist, stellen Sie sicher, dass die Logik der Prozedur den Wert Nothing behandeln kann. Beispielsweise kann die Prozedur eine Try...Catch...Finally-Anweisung (Visual Basic) verwenden, um eine NullReferenceException abzufangen.

Siehe auch

Aufgaben

Problembehandlung bei Variablen in Visual Basic

Konzepte

Wert- und Verweistypen

Übergeben von Argumenten als Wert und als Verweis

Variablendeklaration in Visual Basic

Referenz

Dim-Anweisung (Visual Basic)

ByRef