Ahhhhhhhhhhhh, i werd' irre.
Hab die Gründe raus.
- einmal zwei Fehler beim Kopieren (falscher TypBezeichner)
- wenn bei einer Funktion kein overload deklariert ist, dann darf man keine Parameter angeben
- selbst wenn eine Funktion eindeutig ist, aber dennoch mit overload deklariert wurde, müssen Parameter angegeben werden (auch wenn es unmenschlich Viele sind, die man gern weglassen würde)
- typlose Var/Const-Parameter lassen sich nicht angeben ... also geht nur, wenn ohne overload und man sie weglassen kann
PS:
Also das compiliert hier unter D7:
Delphi-Quellcode:
exports
NSet(var A: IRational; const N: IInteger; const D: IInteger = nil),
NSet(var A: IRational; const N: IInteger; const D: IInteger),
NSet(var A: IRational; const N, D: IInteger);
Selbst das kompiliert anstandslos,
auch wenn so drei Mal die selbe Funktion mit dem
gleichen Namen exportiert werden
und Delphi hier nichmal eine Warnung wirft, dass hier mehrmals der gleiche Name "NSet" in der Exports-Liste steht.