Buchempfehlung
Windows-Programmierung. Das Entwicklerhandbuch zur WIN32-API
Windows-Programmierung. Das Entwicklerhandbuch zur WIN32-API
"Der" Petzold, das über 1000 Seiten starke Standardwerk zum Win32-API - besonders nützlich u. a. bei der GUI-Programmierung in FreeBASIC! [Mehr Infos...]
FreeBASIC-Chat
Es sind Benutzer im FreeBASIC-Chat online.
(Stand:  )
FreeBASIC bei Twitter
Twitter FreeBASIC-Nachrichten jetzt auch über Twitter erhalten. Follow us!


Referenz - TYPE (Funktion)

Referenz-Navigation

 

Syntax: TYPE[<typename>]( a [, b [, ...] ] )
Typ: Funktion
Kategorie: Speicherverwaltung

TYPE() erzeugt einen temporären Typen und stellt damit eine noch kürzere Alternative als BefehlsreferenzeintragWITH dar, wenn alle Records geändert werden.

Beispiel:

TYPE Example
   AS INTEGER field1
   AS INTEGER field2
END TYPE

DIM ex AS Example

' Standard-Methode zur Befüllung der Records
ex.field1 = 1
ex.field2 = 2

' WITH-Methode
WITH ex
   .field1 = 1
   .field2 = 2
END WITH

' TYPE()-Methode
ex = TYPE( 1, 2 )

Um den Code besser lesbar zu gestalten, kann auch diese Syntax verwendet werden:

ex = type<Example>( 1, 2 )

Wie bereits angesprochen, kann TYPE() nur verwendet werden, wenn alle Records eines BefehlsreferenzeintragUDTs geändert werden. Es gibt aber auch noch andere Verwendungsmöglichkeiten.

2. Beispiel: Funktionsaufruf mit Übergabe eines temporären UDTs

Type S
  As Single x, y
End Type

Sub test ( v As S )
  Print "S", v.x, v.y
End Sub

test( Type( 1, 2 ) )
test( Type<S>( 1, 2 ) )

Eine ähnliche Funktionalität bietet die Nutzung eines Constructors:

Type S
  Declare Constructor (a As Single, b As Single)
  As Single x, y
End Type

Constructor S (a As Single, b As Single)
    x = a
    y = b
End Constructor

Sub test ( v As S )
  Print "S", v.x, v.y
End Sub

test( S( 1, 2 ) )
Sleep

Unterschiede zu QuickBASIC:

Unterschiede zu früheren Versionen von FreeBASIC:

Siehe auch:
BefehlsreferenzeintragTYPE (UDT), BefehlsreferenzeintragTYPE (Forward Referencing), BefehlsreferenzeintragWITH


Zusätzliche Informationen und Funktionen
  • Der Referenzeintrag wurde am 30.07.2007 von Redakteurnemored angelegt.
  • Die aktuellste Version wurde am 26.07.2011 von RedakteurMOD gespeichert.
  Versionen Versionen