Ինչպե՞ս է ջնջումն աշխատում C++-ում:
Ինչպե՞ս է ջնջումն աշխատում C++-ում:

Video: Ինչպե՞ս է ջնջումն աշխատում C++-ում:

Video: Ինչպե՞ս է ջնջումն աշխատում C++-ում:
Video: Տվյալների կառուցվածքներ #6։Tree/Ծառ Binary Search Tree, Tree Traversals և այլն։ Tree-ները խորությամբ 2024, Նոյեմբեր
Anonim

Երբ ջնջելն է օգտագործվում է հիշողությունը տեղաբաշխելու համար a C++ դասի օբյեկտ, օբյեկտի կործանիչ է կանչվել է օբյեկտի հիշողության առաջ է տեղաբաշխված (եթե օբյեկտն ունի կործանիչ): Եթե օպերանդը դեպի ջնջել օպերատոր է փոփոխվող l արժեք, դրա արժեքը է օբյեկտից հետո չսահմանված ջնջված է.

Նաև հարց է, թե որն է տարբերությունը C++-ում ջնջման և ջնջման միջև:

Երկուսն էլ օգտագործվում են նույն նպատակի համար, բայց այնուամենայնիվ նրանք ունեն մի քանիսը տարբերություններ , է տարբերություններ են՝ ջնջել օպերատոր է, մինչդեռ free()-ը գրադարանային ֆունկցիա է: ջնջել ազատել հատկացված հիշողությունը և կոչերի կործանիչը: Բայց free() de-allocatememory-ը, բայց չի կանչում destructor:

Կարելի է նաև հարցնել՝ ինչպե՞ս է աշխատում C++-ը նորը։ Երբ նոր օգտագործվում է հիշողություն հատկացնելու համար a C++ դասի օբյեկտ, օբյեկտի կոնստրուկտորը կանչվում է հիշողությունը հատկացնելուց հետո: Զանգված հատկացնելիս օգտագործելով նոր օպերատոր, առաջին չափումը կարող է լինել զրո՝ ի նոր օպերատորը վերադարձնում է եզակի ցուցիչ:

Կարելի է նաև հարցնել՝ ի՞նչ օգուտ C++-ում new and delete օպերատորը։

C++ աջակցում է օբյեկտների դինամիկ տեղաբաշխմանը և տեղաբաշխմանը, օգտագործելով նոր և ջնջել օպերատորները . Սրանք օպերատորներ հատկացնել հիշողություն օբյեկտների համար լողավազանից, որը կոչվում է thefree store: Այն նոր օպերատոր կանչում է հատուկ ֆունկցիա օպերատոր նոր , եւ ջնջել օպերատորը կանչում է հատուկ գործառույթ օպերատորի ջնջում.

Պետք է ջնջե՞մ C++ ցուցիչները:

1 Պատասխան. Դուք չունեք անհրաժեշտ է ջնջել այն, և, առավել ևս, չպետք է ջնջել այն. Եթե երկիրը ավտոմատ օբյեկտ է, այն ինքնաբերաբար կազատվի: Այսպիսով, ձեռքով ջնջելով ա ցուցիչ դրան, դուք գնում եք անորոշ պահվածքի մեջ: