Object Pascal - да кез келген типтелген динамикалық айнымалыларға жадта орын New
процедурасы арқылы бӛлiнедi. Процедурадағы кӛрсетiлген параметр, типтiк сiлтемелiк шама болуы
қажет. Процедура шақырылғанда, параметрiнде кӛрсетiлген айнымалы сиятын жадтың ең кiшi бос
үзiндiсiнiң адресiн табады. Ендi осы табылған адрестi сiлтеменiң мәнiне қайтарады, яғни
23
орналастыруға болатын бастапқы динамикалық адреске теңестiредi. Ендi сiлтеме белгiлi бiр мәндi -
адрестi қабылдағаннан кейiн жадтың осы адресi бойынша кӛрсетiлген тектегi кез келген мәндi
орналастыруға болады. Динамикалық жадқа берiлгендердiң мәнiн жазу, меншiктеу операторы келесi
түрде келтiрiледi: анықталған сiлтеменiң мәнiнен - адрестен соң сiлтемелiк белгiсi “ ^ “ қойылады,
одан кейiн меншiктеу амаланың белгiсi “:= „‖тұрады, ал оң жақта-ӛрнек немесе белгiлi бiр мән
жазылады.
Сонымен, сiлтеме арқылы анықталған берiлгендердiң мәнiн кӛрсету үшiн сiлтемеден кейiн „^ „
таңбасын қою керек.
Бұрыннан бӛлiнген динамикалық жадты босатуға, яғни үймеге қайтаруға болады. Ол үшiн Dispose
процедурасы қолданылады.
Типсiз сiлтемелермен жұмыс атқару үшiн, GetMem және FreeMem процедуралары қолданылады:
GetMem (P,Size); // жадты бөлу
FreeMem(p,Size); // жадты босату
Мұндағы, Р - типсiз сiлтеме, Size - байт ӛлшемiндегi жадтағы аймақтың ұзындығы.
GetMem және
FreeMem процедуралардың қолдануы келесi талаптарға сай болуын қажет етедi:
босатылған және бӛлiнген аймақтың адресi, оның ұзындығы бiрдей болуы тиiс.
Достарыңызбен бөлісу: