Operator =[>] (Assign)
Assigns a value to a variable
lhs = rhs
or
lhs => rhs (from fbc version 0.90)
[ Let ] lhs = rhs
Syntax
Usage
lhs = rhs
or
or, in the QB dialect,
or
[ Let ] lhs => rhs (from fbc version 0.90)Parameters
lhs
The variable to assign to.
T1Any numeric, boolean, string or pointer type.
rhsThe value to assign to lhs.
T2Any type convertible to T2.
Description
This operator assigns the value of its right-hand side operand (rhs) to its left-hand side operand (lhs). The right-hand side operand must be implicitly convertible to the left-hand side type (T1) (for conversion of a boolean to an integer, false or true boolean value becomes 0 or -1 integer value). For example, you cannot assign a numeric value to a string type; to do that, first convert the numeric value to a string using Str or WStr.
Assignment between arrays is not supported presently.
Avoid confusion with Operator = (Equal), which also uses the '=' symbol.
For this purpose and for solving some cases of ambiguity of the parser (see Byref (Function Results)), the alternative symbol '=>' can be used for assignments (in place of '=') from fbc version 0.90 (same as already for the initializers).
Note: the '=>' symbol has been chosen against '<=' (already the operator 'Less Than Or Equal') and ':=' (':' used as statement separator).
This operator can be overloaded for user-defined types.Example
Dim i As Integer
i = 420 ' <- this is the assignment operator
If i = 69 Then '<-this is the equivalence operator
Print "ERROR: i should equal 420"
End -1
End If
Print "All is good."
End 0
i = 420 ' <- this is the assignment operator
If i = 69 Then '<-this is the equivalence operator
Print "ERROR: i should equal 420"
End -1
End If
Print "All is good."
End 0
' compile with -lang fblite or qb
#lang "fblite"
Dim i As Integer
Let i = 300 ' <-alternate syntax
#lang "fblite"
Dim i As Integer
Let i = 300 ' <-alternate syntax
Dialect Differences
Differences from QB
- None
See also