Программа кодының терезесі. Delphi ортасы программист жұмысының ӛте жоғары тиімділігін қамтамасыз ететін орта


Динамикалық жадыны бөлу және оны босату



Pdf көрінісі
бет40/122
Дата27.03.2022
өлшемі1,24 Mb.
#28970
түріПрограмма
1   ...   36   37   38   39   40   41   42   43   ...   122
Динамикалық жадыны бөлу және оны босату. 

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с.  





Достарыңызбен бөлісу:
1   ...   36   37   38   39   40   41   42   43   ...   122




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет