Warum bestimmten Parametern in Delphi ein "A" vorangestellt wird?

8

Wie lautet nach der Delphi-Kodierung die Regel, vor dem Parameternamen in Funktionen / Prozeduren ein A Präfix hinzuzufügen?

Zum Beispiel:

%Vor%

Weitere Beispiele finden Sie in Delphi-Klassen (siehe Klassen, Formulare usw.). Daher meine Frage - was ist die Regel wann zu ergänzen und wann nicht?

    
Kromster 23.12.2011, 05:38
quelle

2 Antworten

6

Normalerweise wird es gemacht, wenn es einen Zusammenstoß von Namen geben würde. Stellen Sie sich zum Beispiel im TComponent-Konstruktor vor, ob es geschrieben wurde:

%Vor%

Der Parameter Owner blendet nun die Owner-Eigenschaft der Instanz aus. Um auf die Eigenschaft zu verweisen, müssten Sie Self.Owner schreiben.

Sie werden wahrscheinlich in den VCL-Quellen finden, dass das A-Präfix verwendet wird, wenn ein solcher Konflikt auftritt, und nicht verwendet wird, wenn dies nicht der Fall ist. Aber die Anwendung dieser Konvention wird inkonsistent sein.

Ich habe eher gehofft, dass der Embarcadero Pascal Style Guide etwas dazu sagen würde, aber leider bleibt es ruhig.

Persönlich verwende ich niemals ein A-Präfix im Code, den ich schreibe. Nach meiner Erfahrung ist Verbergen ausnahmslos gut, weil Sie normalerweise auf den Parameter und nicht auf das Instanzelement verweisen. Wenn Sie jemals auf das Instanzmitglied verweisen müssen, kann Self.Name disambiguieren.

Also, es gibt keine Regel, nur Konvention, die durch persönliche Präferenz bestimmt wird. Treffen Sie Ihre eigene Wahl und bleiben Sie dabei. Konsistenz ist weitaus wichtiger als die Entscheidung, ob Sie eine solche Namenskonvention verwenden oder nicht.

    
David Heffernan 23.12.2011, 05:51
quelle
17

'A' steht für 'Argument'. Außerdem steht "F" für "Feld", "T" steht für "Typ", "E" steht für "Ausnahme", "I" steht für "Schnittstelle".

Es gibt keine Regel, wann ein 'A' Präfix hinzugefügt werden soll und wann nicht.

    
kludg 23.12.2011 05:42
quelle

Tags und Links