Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
50
Task/Delegates/Delphi/delegates-1.delphi
Normal file
50
Task/Delegates/Delphi/delegates-1.delphi
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
unit Printer;
|
||||
|
||||
interface
|
||||
|
||||
type
|
||||
// the "delegate"
|
||||
TRealPrinter = class
|
||||
public
|
||||
procedure Print;
|
||||
end;
|
||||
|
||||
// the "delegator"
|
||||
TPrinter = class
|
||||
private
|
||||
FPrinter: TRealPrinter;
|
||||
public
|
||||
constructor Create;
|
||||
destructor Destroy; override;
|
||||
procedure Print;
|
||||
end;
|
||||
|
||||
implementation
|
||||
|
||||
{ TRealPrinter }
|
||||
|
||||
procedure TRealPrinter.Print;
|
||||
begin
|
||||
Writeln('Something...');
|
||||
end;
|
||||
|
||||
{ TPrinter }
|
||||
|
||||
constructor TPrinter.Create;
|
||||
begin
|
||||
inherited Create;
|
||||
FPrinter:= TRealPrinter.Create;
|
||||
end;
|
||||
|
||||
destructor TPrinter.Destroy;
|
||||
begin
|
||||
FPrinter.Free;
|
||||
inherited;
|
||||
end;
|
||||
|
||||
procedure TPrinter.Print;
|
||||
begin
|
||||
FPrinter.Print;
|
||||
end;
|
||||
|
||||
end.
|
||||
19
Task/Delegates/Delphi/delegates-2.delphi
Normal file
19
Task/Delegates/Delphi/delegates-2.delphi
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
program Delegate;
|
||||
|
||||
{$APPTYPE CONSOLE}
|
||||
|
||||
uses
|
||||
SysUtils,
|
||||
Printer in 'Printer.pas';
|
||||
|
||||
var
|
||||
PrinterObj: TPrinter;
|
||||
begin
|
||||
PrinterObj:= TPrinter.Create;
|
||||
try
|
||||
PrinterObj.Print;
|
||||
Readln;
|
||||
finally
|
||||
PrinterObj.Free;
|
||||
end;
|
||||
end.
|
||||
Loading…
Add table
Add a link
Reference in a new issue