Zitat von
negaH:
Desweiteren nutze nicht deine obige Art des "Typcast" in
ASM. Besser ist:
Delphi-Quellcode:
asm
MOV EBX,[EAX].TMyClass.FMask
CMP EAX,[EBX].TMaskClass.FRect.Left
end;
Ab D7 ist deine obige Syntax ungültig.
Hallo Hagen,
beide Varianten werden sowohl in D5 (Anforderung) als auch in D7 (Deine Aussage) zu idetischem Code übersetzt.
Obwohl ich den Cast in der Form
AType(AVar) aus Konsistentzgründen mit der übrigen Delphi Language als angenehmer finde und die Variante
AVar.AType zu Doppeldeutigkeiten führen kann, sofern man sich nicht an Nameskonventionen hält, wird die von Dir dargestellte Variante in
ASM-Abschnitten von Borland verwendet (zB
Unit System).
Ich denke, dass man aus diesem Grund tatsächlich die zweite Notation verwenden sollte.