Help Center
Help CenterFreeBASIC

Operator Imp= (Implication And Assign)operator

Performs a bitwise-imp (implication) and assigns the result to a variable

Operatorsoperatordocumented

Syntax

Declare Operator Imp= ( ByRef lhs As T1, ByRef rhs As T2 )

Parameters

NameDescription
lhsThe variable to assign to.
T1Any numeric or boolean type.
rhsThe value to perform a bitwise-imp (implication) with
lhs.
T2Any numeric or boolean type.

Description


This operator performs a bitwise-imp and assigns the result to a variable (for conversion of a boolean to an integer, false or true boolean value becomes 0 or -1 integer value). It is functionally equivalent to:
lhs = lhs Imp rhs

Imp is a bitwise operator which is the same as (Not lhs) Or rhs. Imp= compares each bit of its operands, lhs and rhs, and if the bit in lhs is 0 or the bit in rhs is 1, then the corresponding bit in the first operand, lhs, is set to 1, otherwise it is set to 0.

This operator can be overloaded for user-defined types as a member Operator using the appropriate syntax.

Note: Similarly to the operator '=[>]' (assign), the alternative symbol 'Imp=>' can be also used.

Remarks

Usage


lhs Imp= rhs

Dialect Differences


  • In the -lang qb dialect, this operator cannot be overloaded.

Differences from QB


  • New to FreeBASIC

See also


Example


Dim As UByte a = &b00110011

Dim As UByte b = &b01010101

a Imp= b

'' Result    a = &b11011101

Print Bin(a)


Reference

  • Documented in KeyPgOpCombineImp.html