共用方式為


>>= 運算子 (Visual Basic)

執行變數或屬性值上的算術右移位,並將結果指派回該變數或屬性。

variableorproperty >>= amount

組件

  • variableorproperty
    必要項。 整數類資料型別 (Integral Type) (SByte、Byte、Short、UShort、Integer、UInteger、Long 或 ULong) 的變數或屬性。

  • amount
    必要項。 擴展為 Integer 資料型別的數值運算式。

備註

位於 >>= 運算子左邊的項目可以是簡單的純量 (Scalar) 變數、屬性或陣列元素。 變數或屬性不能為 ReadOnly (Visual Basic)

>>=運算子會先在變數或屬性的值上執行算術右移位。 然後,運算子會將該運算的結果指派給變數或屬性。

算術移位不是循環型,這表示位元從結果某端移出後,就不會再從另一端進入。 在算術右移位中,位元移動的範圍若超過最右邊的位元位置會予以捨棄,而且最左邊的位元會傳播到左方空出的位元位置中。 這表示若 variableorproperty 有負值,空出的位置就會設成 1。 若 variableorproperty 是正值,或其資料型別是不帶正負號的型別,則空出的位置就會設成零。

多載化

>> 運算子 (Visual Basic) 可以「多載」,也就是,當運算元具備類別或結構的類型時,該類別或結構就可以重新定義其行為。 多載 >> 運算子會影響 >>= 運算子的行為。 如果您的程式碼在多載 >> 之類別或結構上使用 >>=,就一定要先了解其重新定義的行為。 如需詳細資訊,請參閱 運算子程序 (Visual Basic)

範例

下列範例會使用 >>= 運算子,依指定數量將 Integer 變數的位元模式向右移動,並將結果指派回該變數。

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).

請參閱

參考

>> 運算子 (Visual Basic)

指派運算子 (Visual Basic)

位元移位運算子 (Visual Basic)

Visual Basic 中的運算子優先順序

運算子 (依功能排列) (Visual Basic)

其他資源

Visual Basic 中的陳述式