Возвращает битовую
OR (инклюзивная дизъюнкция) из
двух числовых значений
Синтаксис
Использование
result = lhs Or rhs
Параметры
lhs
Выражение слева.
T1
Любой числовой тип.
rhs
Выражение справа.
T2
Любой числовой тип.
Ret
Числовой тип (варьируется в зависимости от T1
и T2).
Возвращаемое значение
Возвращает битовое сложение двух операндов.
Описание
Этот оператор возвращает битовое сложение его операндов за счет логической
операции, которая приводит значение с установленными битами в зависимости от
битов операндов.
Таблица ниже демонстрирует все комбинации операции булевой дизъюнкции:
Lhs бит | Rhs бит | Результат |
0 | 0 | 0 |
1 | 0 | 1 |
0 | 1 | 1 |
1 | 1 | 1 |
Короткая оценка не производится , оба выражения всегда оцениваются.
Тип возвращаемого значения зависит от типов переданных значений.
Byte,
UByte
и тип с плавающей запятой сначала преобразуются в
Integer.
Если левый и правый типы отличаются только знаковостью, то тип возвращаемого
значения совпадает с типом левого (T1), в противном случае, больший из двух
типов возвращается.
Этот оператор может быть перегружен для пользовательских типов.
Пример
' Использование оператора OR для
двух числовых значений
Dim As UByte numeric_value1, numeric_value2
numeric_value1 = 15 '00001111
numeric_value2 = 30 '00011110
'Результат = 31 = 00011111
Print numeric_value1 Or numeric_value2
Sleep
' Использование оператора OR для
двух условных выражений
Dim As UByte numeric_value
numeric_value = 10
If numeric_value = 5 Or numeric_value = 10 Then Print "Numeric_Value equals 5 or 10"
Sleep
' Это выведет "Numeric_Value equals 5 or 10" поскольку:
' хоть первое условие в операторе IF
является false, но второе является true
Различия диалектов
- В диалекте -lang qb, этот
оператор не может быть перегружен.
Отличия от QB
См. также