Referenz - OFFSETOF
Syntax: OFFSETOF (TypeName, AttrName)
Typ: Funktion
Kategorie: Klassen
OFFSETOF gibt den Offset (Abstand in Byte zur Adresse des UDTs) eines Attributs innerhalb eines UDTs relativ zu seinem Anfang zurück.
- 'TypeName' ist der Name des UDTs, auf den sich der Rückgabewert beziehen soll.
- 'AttrName' ist der Name des Attributs, dessen Offset zurückgegeben werden soll.
Beispiel:
TYPE MyType
x AS SINGLE
y AS SINGLE
UNION
b AS BYTE
i AS INTEGER
END UNION
END TYPE
PRINT "Offset von x = "; OFFSETOF(MyType, x)
PRINT "Offset von y = "; OFFSETOF(MyType, y)
PRINT "Offset von b = "; OFFSETOF(MyType, b)
PRINT "Offset von i = "; OFFSETOF(MyType, i)
Ausgabe:
Offset von x = 0
Offset von y = 4
Offset von b = 8
Offset von i = 8
Interne Darstellung:
#DEFINE OFFSETOF(type_,field_) CINT( @CAST( type_ ptr, 0 )->field_ )
Unterschiede zu QB: neu in FreeBASIC
Unterschiede zu früheren Versionen von FreeBASIC:
Die Version __OFFSETOF in der Dialektform -lang qb existiert seit FreeBASIC v0.24.
Unterschiede unter den FB-Dialektformen:
In der Dialektform -lang qb steht OFFSETOF nicht zur Verfügung und kann nur über __OFFSETOF aufgerufen werden.
Siehe auch:
TYPE, SIZEOF, VARPTR, Verschiedenes
Zusätzliche Informationen und Funktionen | ||||
---|---|---|---|---|
|