1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- { %VERSION=1.1 }
- {$ifdef fpc}{$mode objfpc}{$endif}
- type
- tobj = class
- procedure proc1 (a: integer);overload;virtual;
- procedure proc1 (a: extended);overload;
- end;
- tobj1 = class(tobj)
- procedure proc1 (a: integer);overload;override;
- procedure proc1 (a: char);overload;
- end;
- tobj2 = class (tobj1)
- procedure proc1 (a: integer);override;
- end;
- procedure tobj.proc1 (a: integer);
- begin
- write('tobj.proc1(a:integer) called: ');
- writeln (a);
- end;
- procedure tobj.proc1 (a: extended);
- begin
- write('tobj.proc1(a:extended) called: ');
- writeln (a);
- end;
- procedure tobj1.proc1 (a: integer);
- begin
- write('tobj1.proc1(a:integer) called: ');
- writeln (a);
- end;
- procedure tobj1.proc1 (a: char);
- begin
- write('tobj1.proc1(a:char) called: ');
- writeln (a);
- end;
- procedure tobj2.proc1 (a: integer);
- begin
- write('tobj2.proc1(a:integer) called: ');
- writeln (a);
- end;
- var
- obj1: tobj1;
- obj2: tobj2;
- begin
- obj1:=tobj1.create;
- obj2:=tobj2.create;
- obj2.proc1 (100);
- obj2.proc1 ('a');
- obj2.proc1 (123.456);
- end.
|