home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Turbo Toolbox
/
Turbo_Toolbox.iso
/
1991
/
05
/
grdlagen
/
ubase.pas
< prev
next >
Wrap
Pascal/Delphi Source File
|
1991-04-02
|
2KB
|
58 lines
(* ------------------------------------------------------ *)
(* UBASE.PAS *)
(* *)
(* Base: Dient als Ur-Vater für alle Objekte, damit *)
(* Nachkommen leicht z.B. in Listen verwaltet werden *)
(* können. *)
(* Abstract: Bei manchen Methoden eines Objekts will *)
(* man eine Neuimplementation erzwingen; damit sie *)
(* nicht vergessen wird, kann "Abstract" mit dem Namen *)
(* des Objekts aufgerufen werden. *)
(* *)
(* (C) 1991 R.Reichert & TOOLBOX *)
(* ------------------------------------------------------ *)
UNIT UBase;
INTERFACE
TYPE
BasePtr = ^Base;
Base = OBJECT
DESTRUCTOR Done; VIRTUAL;
END;
PROCEDURE Abstract (Name : STRING);
IMPLEMENTATION
PROCEDURE Abstract(Name : STRING);
BEGIN
WriteLn('Methode von ', Name,
'nicht reimplementiert !');
RunError(232);
END;
DESTRUCTOR Base.Done;
BEGIN
{ kein Aufruf von "Abstract", weil ein Nachkomme nicht
zwingend eigenen Destruktor braucht. }
END;
(* ------------------------------------------------------ *)
(* Eigene Heap-Error-Funktion; Heap-Fehler liefert damit *)
(* einen NIL-Pointer zurück anstatt einen Runtime-Error *)
(* zu erzeugen (siehe Turbo 5.5 Handbuch, S. 113). *)
(* ------------------------------------------------------ *)
{$F+}
FUNCTION HeapFunc(Size : WORD) : INTEGER;
{$F-}
BEGIN
HeapFunc := 1;
END;
BEGIN
HeapError := @HeapFunc;
END.
(* ------------------------------------------------------ *)
(* Ende von UBASE.PAS *)