Zitat von
CK_CK:
Sag' mal, warum machst du das nicht via Überladung (overload)?
Oder geht das bei dlls nicht? (bitte nicht schlagen *duck*)
Doch! Wer
BDS 2006 Enterprise gewonnen hat, muß auch mit der Schelte klarkommen ...
overload ist eine compiler-gesteuerte Abmachung zwischen Programmierer und Programmiersprache. Da man eine
DLL in verschiedensten Sprachen schreiben und aus verschiedensten Sprachen ansprechen können muß, siehst du vermutlich das Problem.
Übrigens: bei cdecl
könnte ein Mechanismus ähnlich overload durchaus funktionieren, aber ob man das dann als überladen deklarieren würde ist mir jetzt nicht ganz geläufig. Es wäre also möglich eine C-Funktion mit variabler Parameterzahl korrekt aufzurufen - aber eben nur, weil der Aufrufer den Stack aufräumt. In dem Fall ist die Abmachung zwischen Programmierer und Programmiersprache zweitrangig, weil alle Verantwortung immer auf Seiten des Aufrufers liegt. Bei stdcall gibt es eine Art Kooperation.