123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- { %version=1.1 }
- {$ifdef fpc}{$mode objfpc}{$endif}
- type
- pobj = ^tobj;
- tobj = object
- public
- constructor init;
- destructor done; virtual;
- procedure proc1 (a: integer);overload; virtual;
- procedure proc1 (a: double);overload; virtual;
- end;
- pobj2 = ^tobj2;
- tobj2 = object (tobj)
- procedure proc1 (a: integer);overload;virtual;
- end;
- var
- error : boolean;
- constructor tobj.init;
- begin
- end;
- destructor tobj.done;
- begin
- end;
- procedure tobj.proc1 (a: integer);
- begin
- write('tobj.proc1(a:integer) called: ');
- writeln (a);
- end;
- procedure tobj.proc1 (a: double);
- begin
- write('tobj.proc1(a:double) called: ');
- writeln (a);
- error:=false;
- end;
- procedure tobj2.proc1 (a: integer);
- begin
- write('tobj2.proc1(a:integer) called: ');
- writeln (a);
- end;
- var
- obj1: pobj;
- obj2: pobj2;
- begin
- error:=true;
- new (obj1, init);
- new (obj2, init);
- obj2^.proc1 (444.5555);
- if error then
- halt(1);
- end.
|