Karl heinz Buchegger schrieb:
> Auch das 'callback' im Funktionsnamen hat mich stutzig gemacht. Ähnlich
> wie die void* beim qsort Callback.
Bei qsort sollen ja gerade beliebige Arrays sortierbar sein, darum
darf über den Grundtyp keine Angabe gemacht werden. qsort selber ist
voll generisch, die Implementierung für bestimmte Typen geschieht allein
in der zugehörigen compare-Funktion.
Auch im Fall oben gibt sich das API generisch, der Code ist es aber
überhaupt nicht. Das ist ohne genaue Doku unbenutzbar.
Ein fast sicherer Indikator für einen solchen Fehler ist das Fehlen
eines zum Pointer gehörenden size-Parameters - die Größe des Objekts ist
also in Wahrheit doch vorgegeben.
Ich würde meinen, derjenige, der das C-API definiert hat, hat nicht
richtig nachgedacht. Oder hatte nicht genug Erfahrung mit C, um die
Fallstricke zu kennen. Jedenfalls ist jetzt der Zeitpunkt, das zumindest
für C++-Programmierer zu korrigieren.