Ich habe einen Datensatztyp
%Vor%Ich habe ein
%Vor%Ich möchte zLine übergeben, aber mit seinem um 1 reduzierten Y-Feld. Gibt es eine Möglichkeit, einen Datensatz in einer Prozedur oder Funktion in seine spezifischen Felder zu zerlegen? Ich habe es versucht
%Vor%was nicht funktioniert. Oder muss ich Folgendes tun:
%Vor%TIA
Sie würden dafür normalerweise eine Funktion einrichten. In modernen Delphi mit erweiterten Datensätzen verwende ich gerne eine statische Klassenfunktion wie folgt:
%Vor%Dann wird Ihr Funktionsaufruf:
%Vor%In älteren Versionen von Delphi müssten Sie eine Funktion im globalen Gültigkeitsbereich verwenden.
Aus Gründen der Lesbarkeit verwende ich gerne eine alternative Lösung mit Datensatzoperatoren wie folgt: Beachten Sie, dass dies entsprechend dem Vorschlag von Kobik aktualisiert wird.
%Vor%Dies ermöglicht diese Art von Konstrukt:
%Vor%was ich für sinnvoll halte. Sie könnten natürlich eine einfache Ganzzahl und nicht ein Array verwenden, wenn Sie immer nur Y dekrementieren wollten, aber das erlaubt X und / oder Y auf einmal zu dekrementieren.
Tags und Links delphi parameter-passing records