Einzelnen Beitrag anzeigen

Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.008 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#17

AW: Ist das ein Pattern?

  Alt 28. Mär 2012, 11:00
Was ist genau da der Unterschied, ich vermute mal, das letzteres besser ist, wenn ich auch nicht weiß, warum?
Gibt keinen unterschied, Assigned ist eine built-in inline Function (manche sagen dazu Compilermagic, weil man den Source davon nicht in der System.pas sieht) und erzeugt denselben assembler Code wie ein Vergleich auf nil.

Zitat von Delphi Dokumentation:
Der Aufruf Assigned(P) entspricht bei einer Zeigervariablen dem Test P <> nil und bei einer Prozedurvariablen dem Test @P <> nil.
Assigned kann allerdings nicht in allen Fällen verwendet werden - zum Beispiel bei dem Ergebnis einer Funktion, da man dieses nicht über einen var Parameter weitergeben kann (E2036 Variable required.)
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat