Перейти на главную   
  helloworld.ru - документация и книги по программированию  
helloworld.ru - документация и книги по программированию
    главная     хостинг    
Поиск по сайту:  
Смотрите также
Языки программирования
C#
MS Visual C++
Borland C++
C++ Builder
Visual Basic
Quick Basic
Turbo Pascal
Delphi
JavaScript
Java
PHP
Perl
Assembler
AutoLisp
Fortran
Python
1C

Интернет-технологии
HTML
VRML
HTTP
CGI
FTP
Proxy
DNS
протоколы TCP/IP
Apache

Web-дизайн
HTML
Дизайн
VRML
PhotoShop
Cookie
CGI
SSI
CSS
ASP
PHP
Perl

Программирование игр
DirectDraw
DirectSound
Direct3D
OpenGL
3D-графика
Графика под DOS

Алгоритмы
Численные методы
Обработка данных

Сис. программирование
Драйверы

Базы данных
MySQL
SQL

Другое

Хостинг


Друзья
demaker.ru
Реклама

Лучший хостинг. Аренда серверов




helloworld.ru

V. ФУНКЦИИ И ПРОЦЕДУРЫ ДЛЯ РАБОТЫ С ПАМЯТЬЮ

1. Функции и процедуры для работы с памятью и указателями.


Процедура GetMemoryManager( var MemMgr: TMemoryManager );

Модуль: System

type TMemoryManager = record
   GetMem: function( Size: Integer): Pointer;
   FreeMem: function( P: Pointer): Integer;
   ReallocMem: function( P: Pointer; Size: Integer): Pointer;
end;

Описание
Процедура возвращает указатели на поля диспетчера памяти, установленного в текущий момент.

Пример
var
   GetMemCount: Integer;
   FreeMemCount: Integer;
   ReallocMemCount: Integer;
   OldMemMngr: TMemoryManager;

   function NewGetMem(Size: Integer): Pointer;
   begin
     Inc(GetMemCount);
     Result:= OldMemMngr.GetMem(Size);
   end;

   function NewFreeMem(P: Pointer): Integer;
   begin
     Inc(FreeMemCount);
     Result:= OldMemMngr.FreeMem(P);
   end;

   function NewReallocMem(P: Pointer; Size: Integer): Pointer;
   begin
     Inc(ReallocMemCount);
     Result:= OldMemMngr.ReallocMem(P, Size);
   end;

const
   NewMemMgr: TMemoryManager = (GetMem: NewGetMem;
   FreeMem: NewFreeMem;
   ReallocMem: NewReallocMem);

procedure SetNewMemMgr;
begin
   GetMemoryManager(OldMemMngr);
   SetMemoryManager(NewMemMngr);
end;


[ Оглавление ]









helloworld.ru © 2001-2021
Все права защищены