Moin Himitsu,
das hier
Tausche(a, b: PInteger)
würde zwar auch funktionieren, dann könnte man aber innerhalb der aufgerufenen Funktion die Werte von a und b ändern, ohne, dass der Aufrufer davon etwas mitbekäme, da sie als Kopie übergeben werden würden.
Tausche(const a, b: PInteger)
wäre ähnlicher zu
Tausche(var a, b: Integer)
, nur dass man eben auch nil als a bzw. b übergeben kann, was für die gezeigte Funktion aber etwas "ungünstig" wäre.
Da man in C Werte ja nur via Pointer zum Ändern übergeben kann, ist die Variante mit const eigentlich die genauere Übersetzung (weswegen ich bei den
API-Importen die Parameter auch immer mit const deklariere

)