type
TMan = class
public
Name: string;
Country: string;
//default values; named arguments
//do not exist, so only the tail
//parameters can be omitted
constructor Create(
const AName: string = 'unknown';
const ACountry: string = 'unknown');
end;
constructor TMan.Create(
const AName, ACountry: string);
begin
Name := AName;
Country := ACountry;
end;
var
Man1, Man2, Man4: TMan;
begin
Man1 := TMan.Create;
//name 'unknown', country 'unknown'
Man2 := TMan.Create('Vladimir');
//name 'Vladimir', country 'unknown'
Man4 := TMan.Create('Vladimir', 'Russia');
//name 'Vladimir', country 'Russia'
WriteLn(Man1.Name, '; ', Man1.Country);
WriteLn(Man2.Name, '; ', Man2.Country);
WriteLn(Man4.Name, '; ', Man4.Country);
end.