Программалау оқулық Алматы, 012 Қазақстан Республикасы Білім жəне ғылым министрлігінің «Оқулық»


mallос функциясына қарағанда,  new



Pdf көрінісі
бет49/465
Дата09.01.2023
өлшемі3,66 Mb.
#60709
түріПрограмма
1   ...   45   46   47   48   49   50   51   52   ...   465
Байланысты:
аибм сплюс

mallос
функциясына қарағанда
new
операциясын қолданудың 
артықшылықтары бар, əсiресе, ол объектілермен жұмыс iстегенде ыңғайлы 
болып табылады.
Егер жады 
new
операциясының көмегімен бөлінген болса, оны 
delete
арқылы, ал 
malloc 
функциясымен бөлінген жадыны – 
free 
функциясының 
көмегімен босату керек. Мұндайда нұсқауыш-айнымалы сақталады жəне оны 
қайталап инициалдауға болады. Жоғарыда көрсетілген динамикалық айныма-
лылар келесідей түрде жойылады:
delete n; delete m; delete [] q; free (u);
Егер жады 
new[]
көмегімен бөлінген болса, оны босату үшін 
delete[]
функциясын қолдану керек. Мұндайда жиымтың өлшемі көрсетiлмейдi. Егер 
1
malloc функциясын қолдану үшін программаға тақырыптық файлын қосу керек.


53
тік жақша қойылмаса, қате туралы хабарлама берілмейді, бірақ жиымның 
тек алғашқы элементі бос болып белгіленеді де, қалғандарын кейінгі опе-
рацияларда пайдалануға болмайды. Мұндай қол жеткізуге болмайтын жады 
ұяшықтары «қоқыс» деп аталады.
НАЗАР АУДАРЫҢЫЗ
Егер нұсқауыш-айнымалы өзінің əрекет ету аймағынан шығып кетсе, оған бөлінген 
жады аймағы босатылады, яғни нұсқауыш сiлтеме жасап тұрған динамикалық айнымалыға 
қол жеткізу мүмкін болмай қалады. Мұндайда динамикалық айнымалының өзіне бөлінген 
жады босатылмайды. «Қоқыстың» пайда болуының басқа бір жағдайы – инициалданған 
нұсқауышқа басқа нұсқауыштың мəнiн меншіктеу. Мұндай кездерде оның бастапқы мəні 
мүлдем жойылады.
Жұлдызшалар, жай жəне тiк жақшалар комбинациясы арқылы құрама 
типтерді жəне құрама типтерге нұсқауыштарды сипаттауға болады, мысалы,
int *(*p[10])();
операторында 
int
типіне нұсқауыштарды қайтаратын параметрсiз 
функцияларға деген 10 нұсқауыштан тұратын жиым жарияланған.
Келісім бойынша тік жəне жай жақшалардың басымдықтары 
(басымдылықтары) бірдей, бірақ олар жұлдызшадан гөрі басымырақ болып 
табылады да, солдан оңға қарай қарастырылады. Қарастыру реттілігін өзгерту 
үшiн қосымша жай жақшалар қолданылады.
Күрделi сипаттамаларды қарастыру кезінде «iштен сыртқa қарай» ережесін 
ұстану керек, оның əрекеттері:
1) егер атаудың оң жағында тік жақшалар бар болса, онда – бұл жиым, ал 
жай жақшалар болған жағдайда – бұл функция;
2) егер атаудың сол жағында жұлдызша бар болса, бұл бұрынырақ 
сипатталған конструкцияға нұсқауыш;
3) егер оң жақта жабылған жай жақша кездессе, онда жақша ішінде 
жоғарыда көрсетілген ережелерді пайдаланып алып, содан соң сыртқы 
өрнектерді қарастыру керек;
4) ең соңғы кезекте тип спецификаторы қарастырылады. 
Жоғарыда берілген сипаттама үшін қарастырылатын приориттеттер 
реттілігі цифрлер көмегімен көрсетілгенде, төмендегідей болады:


Достарыңызбен бөлісу:
1   ...   45   46   47   48   49   50   51   52   ...   465




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

    Басты бет