Einzelnen Beitrag anzeigen

norwegen60

Registriert seit: 23. Dez 2007
Ort: Schwarzwald
505 Beiträge
 
Delphi 12 Athens
 
#1

Parameterauswahl als "set of" oder Constante

  Alt 13. Feb 2009, 21:01
Hallo zusammen,

ich möchte einer Procedure in einer Variablen verschiedene Parameter übergeben. In den Sourcen habe ich zwei Möglichkeiten gefunden. Zum einen, dass ich eine Menge definiere oder indem ich Constanten deklariere.

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
type // Möglichkeit 1
  TMode = (scmOverwrite, scmCheck);
  TModes = set of TMode;

const // Möglichkeit 2
  ccmOverwrite = $0001;
  ccmCheck = $0002;

  procedure AnalyceSet(mode:TModes); // Möglichkeit 1
  begin
    label1.Caption:='';
    if scmOverwrite in mode then label1.Caption:='OverWrite ';
    if scmCheck in mode then label1.Caption:=label1.Caption + 'Check';
  end;

  procedure AnalyceConst(mode:Word); // Möglichkeit 2
  begin
    label2.Caption:='';
    if mode = mode or ccmOverwrite then label2.Caption:='OverWrite ';
    if mode = mode or ccmCheck then label2.Caption:=label2.Caption + 'Check';
  end;

begin
  AnalyceSet([scmOverwrite, scmCheck]);
  AnalyceConst(ccmOverwrite + ccmCheck);
end;
Welche Methode hat welche Vor- und Nachteile bzw. ist zu bevorzugen. Oder gibt es sogar noch eine optimalere Variante. In meiner Anwendung sind es bis zu 6 verschiedene Parameter.

Vielen Dank für eure Tips
Gerd
  Mit Zitat antworten Zitat