>>= Operator (Visual Basic)
Führt eine arithmetische Rechtsverschiebung für den Wert einer Variablen oder Eigenschaft aus und weist das Ergebnis der Variablen oder Eigenschaft wieder zu.
Syntax
variableorproperty >>= amount
Bestandteile
variableorproperty
Erforderlich. Variable oder Eigenschaft eines integralen Typs (SByte
, Byte
, Short
, UShort
, Integer
, UInteger
, Long
oder ULong
).
amount
Erforderlich. Numerischer Ausdruck eines Datentyps, der auf Integer
erweitert wird.
Bemerkungen
Das Element auf der linken Seite des >>=
-Operators kann eine einfache skalare Variable, eine Eigenschaft oder ein Element eines Arrays sein. Die Variable oder Eigenschaft darf nicht ReadOnly sein.
Der >>=
-Operator führt zunächst eine arithmetische Rechtsverschiebung für den Wert der Variablen oder Eigenschaft durch. Der Operator weist dann das Ergebnis dieses Vorgangs der Variablen oder Eigenschaft zu.
Arithmetische Verschiebungen sind nicht kreisförmig, was bedeutet, dass die Bits, die von einem Ende des Ergebnisses verschoben werden, am anderen Ende nicht wieder eingeführt werden. Bei einer arithmetischen Rechtsverschiebung werden die Bits, die über die äußerste rechte Bitposition hinaus verschoben wurden, verworfen und das äußerst linke Bit wird in die links frei gewordenen Bitpositionen verteilt. Dies bedeutet, dass bei einem negativen Wert von variableorproperty
die frei werdenden Stellen auf 1 festgelegt werden. Wenn variableorproperty
positiv ist oder der Datentyp ein nicht signierter Typ ist, werden die frei werdenden Positionen auf 0 (null) festgelegt.
Überladen
Der >> Operator kann überladen werden. Dies bedeutet, dass eine Klasse oder Struktur ihr Verhalten neu definieren kann, wenn ein Operand den Typ dieser Klasse oder Struktur aufweist. Das Überladen des >>
Operators wirkt sich auf das Verhalten des >>=
Operators aus. Wenn Ihr Code >>=
in einer Klasse oder Struktur verwendet, die >>
überlädt, müssen Sie dessen neu definiertes Verhalten verstehen. Weitere Informationen finden Sie unter Operator Procedures.
Beispiel
Im folgenden Beispiel wird der >>=
-Operator verwendet, um das Bitmuster einer Integer
-Variable um den angegebenen Betrag nach rechts zu verschieben und das Ergebnis der Variablen zuzuweisen.
Dim var As Integer = 10
Dim shift As Integer = 2
var >>= shift
' The value of var is now 2 (two bits were lost off the right end).