Revision [13553]
This is an old revision of KeyPgOpAssignment made by JeffMarshall on 2008-07-21 15:43:20.
Operator = (Assign)
Assigns a value to a variable
Syntax:
KeyPgDeclare declare KeyPgOperator operator Let ( KeyPgByref byref lhs KeyPgAs as T1, KeyPgByref byref rhs KeyPgAs as T2 )
Usage:
lhs = rhs
or, in the QB dialect,
[ KeyPgLet Let ] lhs = rhs
Parameters:
lhs
The variable to assign to.
T1
Any numeric, string or pointer type.
rhs
The value to assign to lhs.
T2
Any 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 example, you cannot assign a numeric value to a string type; to do that, first convert the numeric value to a string using KeyPgStr Str or KeyPgWstr Wstr.
Avoid confusion with KeyPgOpEqual Operator = (Equal), which also uses the '=' symbol.
This operator can be overloaded for user-defined types.
Examples:
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:
- In the CompilerOptlang -lang qb dialect, this operator cannot be overloaded.
- In the CompilerOptlang -lang qb dialect, an assignment expression can be preceded by the KeyPgLet Let keyword.
Differences from QB:
- None
See also:
Back to Assignment Operators
Back to Operators