C++ тілінде жою қалай жұмыс істейді?
C++ тілінде жою қалай жұмыс істейді?

Бейне: C++ тілінде жою қалай жұмыс істейді?

Бейне: C++ тілінде жою қалай жұмыс істейді?
Бейне: Компьютер құпиялары әрбір қазақ білу керек | Ыстық клавишалар 2024, Желтоқсан
Anonim

Қашан жою болып табылады а үшін жадты босату үшін пайдаланылады C++ сынып объектісі, объектінің деструкторы болып табылады объект жадының алдында шақырылады болып табылады бөлінген (егер нысанның деструкторы болса). Операнд болса жою оператор болып табылады өзгертілетін l-мәні, оның мәні болып табылады нысаннан кейін анықталмаған жойылады.

Сондай-ақ сұрақ: C++ тілінде жою мен жоюдың айырмашылығы неде?

Екеуі де бір мақсатта қолданылады, бірақ оларда әлі де бар айырмашылықтар , the айырмашылықтар мыналар: жою аноператор, ал free() кітапхана функциясы болып табылады. жою бөлінген жадты босатады және деструкторды шақырады. Бірақ free() de-allocatememory, бірақ деструкторды шақырмайды.

Сондай-ақ, C++ жаңа қалай жұмыс істейді деген сұрақ туындауы мүмкін. Қашан жаңа a үшін жадты бөлу үшін пайдаланылады C++ сынып объектісі, объектінің конструкторы жады бөлінгеннен кейін шақырылады. көмегімен массив бөлу кезінде жаңа оператор, бірінші өлшем нөл болуы мүмкін - the жаңа оператор бірегей көрсеткішті қайтарады.

Сондай-ақ, C++ тілінде new және delete операторы не үшін қажет?

C++ көмегімен нысандарды динамикалық бөлуді және бөлуді қолдайды жаңа және жою операторлары . Мыналар операторлар thefree store деп аталатын пулдан нысандар үшін жадты бөлу. The жаңа оператор арнайы функцияны шақырады оператор жаңа , және операторды жою арнайы функцияны шақырады операторды жою.

Маған C++ көрсеткіштерін жою керек пе?

1 Жауап. Сіз жоқ жою керек бұл, және, оның үстіне, сіз болмауы керек жою ол. Жер автоматты нысан болса, ол автоматты түрде босатылады. Сонымен, қолмен жою а көрсеткіш оған байланысты сіз анықталмаған мінез-құлыққа түсесіз.