Operator -> (Pointer To Member Access)
Returns a reference to a member from a pointer to an object
Syntax
`
Declare Operator -> ( ByRef lhs As T Pointer ) As U
`
Note that `Operator ->` (Pointer to member access) 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 = lhs -> rhs
`
Parameters
`lhs`
The address of an object.
`T`
A pointer to a user-defined type.
`rhs`
The name of a member to access.
`U`
The type that `rhs` refers to.
Return Value
Returns a reference to the member specified by `rhs`.
Description
`Operator ->` (Pointer to member access) returns a reference to a member of an object through a pointer to that object. It has the effect of dereferencing a pointer to an object, then using `Operator . (Member Access)`. For example, `"p->member"` is equivalent to `"x.member"`, if x is an object of user-defined type and p is a pointer to an object of the same type.
This operator can be overloaded for user-defined types.
Example
`
Type rect
x As Integer
y As Integer
End Type
Dim r As rect
Dim rp As rect Pointer = @r
rp->x = 4
rp->y = 2
Print "x = " & rp->x & ", y = " & rp->y
Sleep
`
Dialect Differences

- Not available in the -lang qb dialect.

Differences from QB

- New to FreeBASIC

See also

- `Operator . (Member Access)`
- `Operator @ (Address Of)`
- `Operator * (Value Of)`