Es kommt auf die Parameter drauf an, aber man kann auch Funktionen überladen. Dafür müssen sich die Typen der Parameter entsprechend unterscheiden.
Delphi-Quellcode:
procedure blub(s: string = ''; i: Integer = 0); overload;
procedure blub(k: Integer); overload;
String (s) und Integer (k) unterscheiden sich, so daß Delphi hier entscheiden kann, was es nehmen muß.
Delphi-Quellcode:
blub; // 1
blub(123); // 2
blub('text'); // 1
blub('x', 456); // 1