Delphi: bricht den Datensatzparameter in Felder auf

8

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

    
JRBleau 24.08.2017, 13:22
quelle

2 Antworten

9

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.

    
David Heffernan 24.08.2017 13:27
quelle
3

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.

    
Dsm 24.08.2017 14:29
quelle