Type (Alias)

FreeBASIC

Type (Alias)
 
Declares an alternative name for a type

Syntax

Type typename As symbol

Parameters

typename
new alternative name.
symbol
symbol or data type declaration to associate with typename.

Description

symbol may refer to any declared data type including a built-in data type, Sub or Function pointer, Type declaration, Union declaration, or Enum declaration.

A type alias can be used to allow forward declarations of parameters in procedure declarations, but only used with pointers or parameters passed by reference (excluding arrays).
A type alias can also be used to allow forward declarations of data fields in User Defined Types, but only used with pointers.

Example

Type ParentFwd As Parent
Type Child
    Name As ZString * 32
    ParentRef As ParentFwd Ptr
    ''...
End Type

Type Parent
    Name As ZString * 32
    ChildList(0 To 9) As Child
    ''...
End Type

Dim p As Parent
p.Name = "Foo"
With p.ChildList(0)
    .Name = "Jr."
    .ParentRef = @p
    '' ...
End With    

With p.ChildList(0)
    Print .Name; " is child of "; .parentRef->Name
End With


Differences from QB

  • New to FreeBASIC

See also