Operator Shl= (Shift Left And Assign)
Shifts left and assigns a value to a variable
Declare Operator Shl= ( ByRef lhs As Integer, ByRef rhs As Integer )
Declare Operator Shl= ( ByRef lhs As UInteger, ByRef rhs As UInteger )
Declare Operator Shl= ( ByRef lhs As LongInt, ByRef rhs As LongInt )
Declare Operator Shl= ( ByRef lhs As ULongInt, ByRef rhs As ULongInt )
lhs shl= rhs
lhs
This operator shifts the bits in its left-hand side (lhs) parameter a number of times specified by its right-hand side (rhs) parameter, and assigns the result to lhs. It is functionally equivalent to:
This operator can be overloaded for user-defined types.
Syntax
Declare Operator Shl= ( ByRef lhs As Integer, ByRef rhs As Integer )
Declare Operator Shl= ( ByRef lhs As UInteger, ByRef rhs As UInteger )
Declare Operator Shl= ( ByRef lhs As LongInt, ByRef rhs As LongInt )
Declare Operator Shl= ( ByRef lhs As ULongInt, ByRef rhs As ULongInt )
Usage
lhs shl= rhs
Parameters
lhs
The variable to assign to.
rhsThe value to shift lhs left by.
Description
This operator shifts the bits in its left-hand side (lhs) parameter a number of times specified by its right-hand side (rhs) parameter, and assigns the result to lhs. It is functionally equivalent to:
lhs = lhs Shl rhs
This operator can be overloaded for user-defined types.
Example
Dim i As Integer
i = &b00000011 '' = 3
i Shl= 3 '' = i*2^3
'' Result: 11000 24 24
Print Bin(i), i, 3*2^3
Sleep
i = &b00000011 '' = 3
i Shl= 3 '' = i*2^3
'' Result: 11000 24 24
Print Bin(i), i, 3*2^3
Sleep
Dialect Differences
- Not available in the -lang qb dialect unless referenced with the alias __Shl=.
Differences from QB
- New to FreeBASIC
See also