Seit welcher Version das Überladen von Prozeduren/Funktionen unter Delphi unterstützt wird, weiß ich nicht, aber wenn in der Hilfe dazu nichts zu finden ist, dann gibt es das in der entsprechenden Version noch nicht. Turbo Pascal 7.0 kannte auf jeden Fall noch kein "overload".
Ich wollte nur mal anmerken, daß das Überladen von Prozeduren/Funktionen zunächst nichts mit Objekten/Klassen zu tun hat, wie das folgende Beispiel zeigt:
Delphi-Quellcode:
function Maximum(a, b: Integer): Integer; overload;
begin
if a > b then
Result := a
else
Result := b;
end;
function Maximum(a, b: Single): Single; overload;
begin
if a > b then
Result := a
else
Result := b;
end;
Man vergleiche auch die interne Definition von "IntToStr". Überladen von Prozeduren/Funktionen bedeutet, daß es zu einem Bezeichner mehrere Implementationen gibt, die sich in der Parameterliste unterscheiden. Die beiden Aufrufe
Delphi-Quellcode:
Maximum(3, 8);
Maximum(3.2, 8.5);
aktivieren jeweils die passende Implementation, die aber schon durch den Compiler festgelegt wird.
Die Tatsache, daß man bei Objekten/Klassen dynamische Methoden mit "dynamic", "virtual" und "override" erstellen kann, bedeutet ja, daß diese Methoden dynamisch gebunden werden. Das heißt, daß erst während des Programmablaufs entschieden wird, welche der Implementationen aktiviert wird. Das Ganze nennt man dann (dynamisches) Überschreiben von Methoden.
Natürlich kann man eine virtuelle Methode in einer Klassendefinition als "overload" deklarieren, so daß in abgeleiteten Klassen eine überschriebene Methode sowie weitere überladene Methoden angelegt werden können. Ich hoffe, das hat ein weng geholfen ...