<<= 演算子 (Visual Basic)

変数またはプロパティの値に左シフトの算術演算を実行し、その結果を元の変数またはプロパティに代入します。

variableorproperty <<= amount

指定項目

  • variableorproperty
    必ず指定します。 整数型 (SByte、Byte、Short、UShort、Integer、UInteger、Long または ULong) の変数またはプロパティです。

  • amount
    必ず指定します。 整数型 (Integer) に拡大変換されるデータ型の数値表現です。

解説

<<= 演算子の左側には、スカラー変数、プロパティ、配列の要素なども指定できます。 変数またはプロパティは ReadOnly (Visual Basic) にすることはできません。

<<= 演算子は、最初に変数またはプロパティの値の算術左シフトを実行します。 演算子は、変数またはプロパティに再度その操作の結果を代入します。

数値のシフトは、循環的には行われません。つまり、一方の端からはみ出したビットが、もう一方の端に補われることはありません。 左シフトの算術演算では、結果のデータ型の範囲を超えてシフトされるビットは破棄され、右側に空いたビット位置はゼロに設定されます。

オーバーロード

<< 演算子 (Visual Basic) は オーバーロード できます。つまり、オペランドがそのクラスまたは構造体の型であれば、クラスまたは構造体がこの動作を再定義できます。 << 演算子をオーバーロードすると、<<= 演算子の動作に影響します。 << をオーバーロードしているクラスまたは構造体で <<= を使用している場合、再定義された動作を確認してください。 詳細については、「演算子プロシージャ (Visual Basic)」を参照してください。

使用例

<<= 演算子を使用して、整数型 (Integer) 変数のビット パターンを、指定されたビット数だけ左にシフトし、結果を元の変数に代入する例を、次に示します。

Dim var As Integer = 10
Dim shift As Integer = 3
var <<= shift
' The value of var is now 80.

参照

関連項目

<< 演算子 (Visual Basic)

代入演算子 (Visual Basic)

ビット シフト演算子 (Visual Basic)

Visual Basic における演算子の優先順位

機能別の演算子一覧 (Visual Basic)

その他の技術情報

Visual Basic におけるステートメント