Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - Function und Procedure mit overload


Mossi - Mi 26.11.03 22:28
Titel: Function und Procedure mit overload
Ich hab gerade ein kleines Problem:

ich habe eine Klasse erstellt, die zwei gleiche Methoden enthält. Die erste davon ist eine Function, die TList zurückgibt und die zweite eine Procedure, die eben nichts zurückliefert. Dies lässt allerdings Delphi nicht zu. Ok. ich weiß jetzt ehrlich gesagt auch nicht, ob das im Sinne von OOP ist, aber ich hatte da eben eine solche Idee.
Kann mir jemand sagen, ob das wirklich nicht funktioniert?


Delphi-Quelltext
1:
2:
function ReadOptionsFromIniFile(iFileName: String): TList; overload;
procedure ReadOptionsFromIniFile(iFileName: String); overload;


Christian S. - Mi 26.11.03 22:37

Überladene Methoden werden anhand ihrer Parametertypen unterschieden. Da hier die Parametertypen identisch sind, kann das nicht funktionieren. Eine Unterscheidung wäre nicht möglich.


Mossi - Mi 26.11.03 22:38

schade. dann muss ich mri was anderes einfallen lassen.
danke dir


ErnestoChe - Do 27.11.03 23:00

Hallo,

du musst ja den Rückgabewert nicht unbedingt zuweisen. Man kann eine Funktion aufrufen ohne den Rückgabwert an irgendwas zuzuweisen. Daher würde dir die Funktion genügen und du bräuchtest nicht noch eine Prozedur schreiben. Gut, ich weiss ich jetzt nicht, ob die sich um Rumpf großartig unterscheiden.

Evtl. könntest du ja den Code posten.

MFG

- Ernesto -