AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Parameterliste einer Funktion zuweisen

Ein Thema von blablab · begonnen am 27. Mär 2011 · letzter Beitrag vom 27. Mär 2011
Antwort Antwort
blablab

Registriert seit: 3. Jan 2006
509 Beiträge
 
Delphi 7 Enterprise
 
#1

Parameterliste einer Funktion zuweisen

  Alt 27. Mär 2011, 13:01
Hallo!

Ich habe mehrere Sortier-Algorithmen und möchte diese gerne in einer Funktion kapseln. Deshalb möchte ich, dass alle Sortier-Algorithmen vom Typ TSortierAlgorithm sind:
Delphi-Quellcode:
type
   TSortAlgorithm = procedure(ParameterlisteX);
Aber wie weise ich den einzelnen Algorithmen diese spezielle Parameterlist zu. Ich kann einfach die Parameterliste jedes Mal abschreiben:
Delphi-Quellcode:
procedure A(ParameterlisteX);
begin
   ...
end;

procedure B(ParameterlisteX);
begin
   ...
end;

procedure C(ParameterlisteX);
begin
   ...
end;
Am liebsten wärs mir aber, wenn man das irgendwie zuweisen könnte. In etwa so:
Delphi-Quellcode:
procedure A := TSortAlgorithm;
begin
   ...
end;

procedure B := TSortAlgorithm;
begin
   ...
end;

procedure C := TSortAlgorithm;
begin
   ...
end;
Gibt es da eine Möglichkeit?

Grüße
blablab
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.071 Beiträge
 
Delphi 12 Athens
 
#2

AW: Parameterliste einer Funktion zuweisen

  Alt 27. Mär 2011, 13:04
procedure A(Proc: TSortAlgorithm);

Ansonsten Nein, sowas geht leider nicht. (hab ich mir auch schon gewünscht)

Du kannst aber deine Parameter in ein Parameter-Objekt legen oder notfalls auch in einen Record.

Delphi-Quellcode:
type
  TSortParam = class {oder =record}
    ParameterX: Integer;
    ParameterY: String;
    ParameterZ: Sonstwas;
  end;

procedure A(Param: TSortParam); // beim Record das CONST nicht vergessen
begin
   ...
end;

procedure B(Param: TSortParam);
begin
   ...
end;
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu (27. Mär 2011 um 13:09 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von BUG
BUG

Registriert seit: 4. Dez 2003
Ort: Cottbus
2.094 Beiträge
 
#3

AW: Parameterliste einer Funktion zuweisen

  Alt 27. Mär 2011, 13:38
Oder anders:
Delphi-Quellcode:
type
  TSortAlgorithm = class
  public
    property ParameterX: Integer;
    property ParameterY: String;
    property ParameterZ: Sonstwas;
    procedure sort; virtual abstract;
  end;
Von TSortAlgorithm kannst du jetzt zB. TBubblesort ableiten und implementierst dafür die Sort-Prozedur.
Intellekt ist das Verstehen von Wissen. Verstehen ist der wahre Pfad zu Einsicht. Einsicht ist der Schlüssel zu allem.
  Mit Zitat antworten Zitat
blablab

Registriert seit: 3. Jan 2006
509 Beiträge
 
Delphi 7 Enterprise
 
#4

AW: Parameterliste einer Funktion zuweisen

  Alt 27. Mär 2011, 14:47
Vielen Dank!
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:22 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz