2015-12-28 14:25:15 +03:00
|
|
|
|
// Иллюстрация конструкторов и методов в записях
|
|
|
|
|
|
// Если переопределен метод ToString, то он вызывается при выводе объекта этого типа процедурой writeln
|
2015-05-14 22:35:07 +03:00
|
|
|
|
type
|
|
|
|
|
|
SexType = (Male, Female);
|
|
|
|
|
|
Person = record
|
|
|
|
|
|
Name: string;
|
|
|
|
|
|
Age, Weight: integer;
|
|
|
|
|
|
Sex: SexType;
|
|
|
|
|
|
constructor (Name: string; Age, Weight: integer; Sex: SexType);
|
|
|
|
|
|
begin
|
|
|
|
|
|
Self.Name := Name;
|
|
|
|
|
|
Self.Age := Age;
|
|
|
|
|
|
Self.Sex := Sex;
|
|
|
|
|
|
Self.Weight := Weight;
|
|
|
|
|
|
end;
|
|
|
|
|
|
function ToString: string; override;
|
|
|
|
|
|
begin
|
2015-12-28 14:25:15 +03:00
|
|
|
|
Result := string.Format('Имя: {0} Возраст: {1} Вес: {2} Пол: {3}', Name, Age, Weight, Sex);
|
2015-05-14 22:35:07 +03:00
|
|
|
|
end;
|
|
|
|
|
|
end;
|
|
|
|
|
|
|
2015-12-28 14:25:15 +03:00
|
|
|
|
var p: Person := new Person('Иванов',20,70,SexType.Male);
|
2015-05-14 22:35:07 +03:00
|
|
|
|
|
|
|
|
|
|
begin
|
|
|
|
|
|
writeln(p);
|
|
|
|
|
|
end.
|