Einzelnen Beitrag anzeigen

Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#1

Methoden in mehreren Klassen benutzen...

  Alt 25. Feb 2006, 14:26
Moin,

mein "Problem" ist schwer zu beschreiben, deswegen versuche ich mal per Code zu erklären wo meine Frage liegt.

Nehmen wir einmal an ich habe folgende Hauptklasse:

Delphi-Quellcode:
TIRCClient = class
private
  FClient: TClientSocket;
public
  procedure Message(const Channel, Message: string);
end;

...

procedure TMainClass.Message(const Channel, Message: string);
begin
  FClientSocket.SendText(Format('PRIVMSG %s :%s%s', [Channel, Message, #13#10]));
end;
Diese Beispiel-Methode schreibt eine Message in einen Channel eines IRC Servers...

So, jetzt gibt es noch eine Subklasse die folgendermaßen aussieht:

Delphi-Quellcode:
TUser = class
private
  FOwner: TIRCClient;
  FChannel: string;
public
  procedure Message(const Message: string);
end;

...

procedure TUser.Message(const Message: string);
begin
  FOwner.Message(FChannel, Message);
end;


Da ist das "Problem".... ist es wirklich nötig, Funktionen in einer Subklasse zu haben die eigentlich nichts tun, bis auf eine Methode des Vorgängers aufzurufen? Bei 100 Methoden (z.B) ist es ziemlich nervig wenn man dann solchen Code hier hat:

Delphi-Quellcode:
procedure TUser.Proc1(const Message: string);
begin
  FOwner.Proc(FChannel, Message);
end;

procedure TUser.Proc2(const Message: string);
begin
  FOwner.Proc2(FChannel, Message);
end;

procedure TUser.Proc3(const Message: string);
begin
  FOwner.Proc3(FChannel, Message);
end;
Und das nur, weil die Menge der Parameter vielleicht unterschiedlich ist...

Ich hoffe es ist zu verstehen was ich meine..sonst erklär ich gern nochmal *g*
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat