Einzelnen Beitrag anzeigen

Cyf

Registriert seit: 30. Mai 2008
407 Beiträge
 
Lazarus
 
#16

Re: Typecast or not?

  Alt 9. Jan 2009, 00:43
Ok meine Definition:

Impliziter typecast:

Ein Word wird als Cardinal interpretiert, ohne dass man das selbst angibt.
ebenso Integer -> Floattyp (wobei es hier eine tatsächliche Umwandlung gibt)

Expliziter typecast:

alles, wo explizit ein Speicherbereich anders interpretiert wird
Byte(aCardinal)
Pointer(aInt)
Cardinal(P)
PMyRecord($00FFAACC)

generelle Typenumwandlung:

Funktionen die einen Typ umwandeln. IntToStr(), StrToInt, StrToFloat(), was es halt so gibt und was man auch selbst schreiben könnte.

Der Unterschied zwischen StrtoInt und einem expliziten typecast ist für mich also, ob dadurch Bytecode generiert werd, der etwas macht (streng gibt es den bei impliziten casts mitunter auch).

[Edit] roter Kasten
  Mit Zitat antworten Zitat