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.

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

Dialect Differences
   * In the -lang qb dialect, this operator cannot be overloaded.

Differences from QB
   * New to FreeBASIC

See also
   * Xor

