Operator += (Add And Assign)

Adds and assigns a value to a variable

Syntax
	KeyPgDeclareDeclare KeyPgOperatorOperator += ( KeyPgByrefByRef lhs KeyPgAsAs T1, KeyPgByrefByRef rhs KeyPgAsAs T2 )

	KeyPgDeclareDeclare KeyPgOperatorOperator += ( KeyPgByrefByRef lhs KeyPgAsAs T KeyPgPtrPtr, KeyPgByrefByRef rhs KeyPgAsAs KeyPgIntegerInteger )

	KeyPgDeclareDeclare KeyPgOperatorOperator += ( KeyPgByrefByRef lhs KeyPgAsAs KeyPgStringString, KeyPgByrefByRef rhs KeyPgAsAs KeyPgStringString )
	KeyPgDeclareDeclare KeyPgOperatorOperator += ( KeyPgByrefByRef lhs KeyPgAsAs KeyPgWstringWString, KeyPgByrefByRef rhs KeyPgAsAs KeyPgWstringWString )

Usage
	lhs += rhs

Parameters
	lhs
		The variable to assign to.
	T1
		Any numeric type.
	rhs
		The value to add to lhs.
	T2
		Any numeric type.
	T
		Any data type.

Description
	This operator adds and assigns a value to a variable. It is functionally 
	equivalent to:

		lhs = lhs KeyPgOpAdd+ rhs

	For numeric types, the right-hand side expression (rhs) will be 
	converted to the left-hand side type (T1).

	For string types, this operator is functionally equivalent to 
	KeyPgOpCombineConcatOperator &= (Concatenate And Assign).

	This operator can be overloaded for user-defined types as a member 
	KeyPgOperatorOperator using the appropriate syntax.

	Note: Similarly to the operator '=[>]' (assign), the alternative symbol 
	'+=>' can be also used.

Example
	Dim n As Double
	n = 6
	n += 1
	Print n
	Sleep

Output:

	7

Dialect Differences
	* In the CompilerOptlang-lang qb dialect, this operator cannot be overloaded.

Differences from QB
	* New to FreeBASIC

See also
	* KeyPgOpAddOperator + (Add)
	* CatPgMathMathematical Functions

