Перегрузка (overload) в Delphi

Пример собственного класса в Delphi написан в предыдущей статье. Попытаемся написать два конструктора. Для этого следует перегрузить словом overload.

Перегрузить также можно процедуры и функции с одинаковыми именами, но различающиеся параметрами. При этом компилятор анализирует процедуры и функции и вызовет тот метод, который вам подходит. Если Вы достаточно часто используете qr-коды, Вам помогут программы для qr кодов (ios, android) с подробным описанием. Пример перегрузки конструктора:

	constructor Create (); overload;
	constructor Create (A: Integer; S: String); overload;

В первом случае коструктор без параметров, а во втором с двумя параметрами. Следует также не забывать о том, что после объявления в классе конструкторов или функций и процедур — их следует описать ниже.

 
  constructor Resident.Create ();
  begin

  end;

  constructor Resident.Create (A: Integer; S: String);
  begin
    apartament := A;
    Surrname := S;
  end;

Полный листинг програмки выглядит следующим образом:

 
program example;

uses SysUtils, Dialogs;

	type Resident = class
              apartament : Integer;
              Surrname : String;
              constructor Create (); overload;
              constructor Create (A: Integer; S: String); overload;
              function Info (): String;
      end;

  constructor Resident.Create ();
  begin

  end;

  constructor Resident.Create (A: Integer; S: String);
  begin
    apartament := A;
    Surrname := S;
  end;

	function Resident.Info;
		begin
			Result := 'resident: ' + Surrname +
			' apartament №: ' + IntToStr(apartament) + '.';
		end;

	Var
		Ivanov : Resident;
    Petrov : Resident;
	begin
		Ivanov := Resident.Create();
		Ivanov.apartament:=20;
		Ivanov.Surrname:='Ivanov';
		Showmessage(Ivanov.Info());

    Petrov :=Resident.Create(23, 'Petrov');
    Showmessage(Petrov.Info());
	End.
. Delphi overload delphi create overload delphi overload метод в одном классе overload делфи delphi Перегрузка процедур и функций
. перегрузка конструкторов паскаль delphi create overload delphi overload метод в одном классе overload делфи перегрузка делфи
Комментирование и размещение ссылок запрещено.

Top