Skip to content

Operator XOR= (Exclusive Disjunction and Assign)


Performs a bitwise-xor (exclusive disjunction) and assigns the result to a variable

Syntax

` declare operator Xor= ( byref lhs as T1, byref rhs as T2 )

`

Usage

` lhs Xor= rhs

`

Parameters

lhs

The variable to assign to.

T1

Any numeric or boolean type.

rhs

The value to perform a bitwise-xor (exclusive or) with lhs.

T2

Any numeric or boolean type.

Description

This operator performs a bitwise-or 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 xor rhs

Xor= compares each bit of its operands, lhs and rhs, and if both bits are the same (both 1 or both 0), then the corresponding bit in the first operand, lhs, is set to 0, otherwise it is set to 1.

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 'Xor=>' can be also used.

Examples

start GeSHi

vb
Dim As UByte a = &b00110011
Dim As UByte b = &b01010101
a Xor= b
'' Result    a = &b01100110
Print Bin(a)

end GeSHi

Dialect Differences

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

Differences from QB

  • New to FreeBASIC

See also

  • Xor

Back to DocToc

Translated from FreeBASIC official docs. Contact us for removal if infringed.
FreeBASIC is an open-source project, not affiliated with Microsoft