Announcement

Collapse
No announcement yet.

Parameterauswahl als "set of" oder Constante

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Parameterauswahl als "set of" oder Constante

    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.
    Code:
    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
Working...
X