Оператор >>= (Visual Basic)
Производит арифметический сдвиг вправо значения переменной или свойства и присваивает результат этой переменной или свойству.
variableorproperty >>= amount
Части
variableorproperty
Обязательный. Переменная или свойство целого типа (SByte, Byte, Short, UShort, Integer, UInteger, Long или ULong).amount
Обязательный. Цифровое значение с типом данных, расширяемым до Integer.
Заметки
Элемент с левой стороны оператора >>= может быть простой скалярной переменной, свойством или элементом массива. Переменная или свойство не могут быть ReadOnly (Visual Basic). Оператор >>= присваивает значение, стоящее справа от него, переменной или свойству, расположенному слева.
Арифметические сдвиги не являются циклическими. Это означает, что биты, сдвинутые в один конец результата, не вводятся повторно в другой конец. При арифметическом сдвиге вправо, биты, сдвигаемые дальше первой справа позиции, теряются, а место, освобождаемое слева, замещается значением первого бита слева. Это значит, что если variableorproperty имеет отрицательное значение, освобождаемые позиции устанавливаются в единицу. Если 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 (one bit was lost off the right end).
См. также
Ссылки
Оператор ''>>'' (Visual Basic)
Операторы присваивания (Visual Basic)
Операторы поразрядного сдвига (Visual Basic)
Порядок применения операторов в Visual Basic
Список операторов, сгруппированных по функциональному назначению (Visual Basic)