fail.pas

Пример программы для процедуры Fail.

Код примера
 {Fail.PAS}
 
 { Пример программы для процедуры Fail }
 
 {$F+}
 Function HeapFunc(Size : Word) : Integer;
 Begin
  HeapFunc:=1;   { Возвращает NIL, если вне кучи }
 End;
 {$F-}
 
 Type CharPtr : ^Char;
    BigString = Object   { Хранит большие строки }
            Len : Word;
            Txt : CharPtr;
    Constructor Init(Size : Word; Contents : CharPtr);
      Procedure Show;
               ...
     Destructor Done;
                End;
 Constructor BigString.Init(Size : Word; Contents : CharPtr);
 Begin
  Len:=Size;
  GetMem(Txt, Size);
  If Txt = NIL Then Fail;   { Выходим с сообщением об ошибке }
  Move(Contents^, Txt^, Size);
 End;
 
 Destructor BigString.Done;
 Begin
  FreeMem(Txt, Len);
 End;
 

Скачать fail.pas