: .
, . , , , . , , : , , , .
. T2 T1, T2 T1, T1 T2( ).
, T3 T2, T2 T1, T3 T1. () .
object
end
;
( )
: ;
;
; virtual
. .
Type
Point = object
X, Y: integer;
End;
Rect = object
A, B: Point;
procedure Init(XA, YA, XB, YB: integer);
procedure Copy(var R: Rect);
procedure Move(DX, DY: integer);
procedure Grow(DX, DY: integer);
procedure Intersect(var R: Rect);
procedure Union(var R: Rect);
function Contains(P: Point): boolean;
End;
StringPtr = ^string;
FieldPtr = ^Field;
Field = object
X, Y, Len: integer;
Name: StringPtr;
constructor Copy(var F: Field);
constructor Init(FX, FY, FLen: integer; FName: string);
Destructor Done; virtual;
Procedure Display; virtual;
Procedure Edit; virtual;
function GetStr: string; virtual;
function PutStr(S: string): boolean; virtual;
End;
StrFieldPtr = ^StrField;
StrField = object(Field)
Value: StringPtr;
constructor Init(FX, FY, FLen: integer; FName: string);
Destructor Done; virtual;
function GetStr: string; virtual;
function PutStr(S: string): boolean;
Virtual;
function Get: string;
procedure Put (S: string);
End;
NumFieldPtr = ^NumField;
NumField = object(Field)
Value, Min, Max: integer;
constructor Init(FX, FY, FLen: integer; FName: string;
FMin, FMax: longint);
function GetStr: string; virtual;
function PutStr(S: string): boolean;
|
|
Virtual;
function Get: longint;
function Put(N: longint);
End;
ZipFieldPtr = ^ZipField;
ZipField = object(NumField)
function GetStr: string; virtual;
function PutStr(S: string): boolean; virtual;
End;
, , . , , .
, .
. , , , , . , , .
, private , (), . , (private) - , , , . , , , .
(forward). , - , , , .
, . , . , , , .
, . Copy, Intersect Union Rect .
, , , , ( virtual ). , . .
- , . , , , -.
|
|
, . , , . , , , .
. , , , , . , virtual.
Windows , . , . , .
, , virtual. 1..65535 , . :
rocedure FileOpen(var Msg: TMessage); virtual 100;
, . virtual, , .