Dereferences a pointer
Syntax
Declare Operator * ( ByRef rhs As T Pointer ) As T
Note that Operator * (Value of) returns a reference. As of 02.27.07, FreeBASIC syntax does not support returning references. When it does, this syntax will need to be changed.
Usage
result = * rhs
Parameters
rhs
The address to dereference.
T
Return Value
Returns a reference to the value stored at the address rhs.
Description
Operator * (Value of) returns a reference to the value stored at an address, and is often called the dereference operator. The operand is not modified in any way.
As a reference, the result of this operator can be used on the left-hand side of assignments.
This operator can be overloaded for user-defined types.
Example
'This program demonstrates the use of * to utilize the value a pointer points to.
Dim a As Integer
Dim pa As Integer Ptr
pa=@a 'Here, we use the @ operator to point our integer ptr at 'a'.
' 'a' is, in this case, a standard integer variable.
a=9 'Here we give 'a' a value of 9.
Print "The value of 'a' is";*pa 'Here, we display the value of 'a' using a pointer.
*pa = 1 'Here we use our pointer to change the value of 'a'
Print "The new value of 'a' is";a 'Here we display the new value of 'a'.
Output:
The value of 'a' is 9
The new value of 'a' is 1
Dialect Differences
- In the -lang qb dialect, this operator cannot be overloaded.
Differences from QB
See also