Video: Cum funcționează ștergerea în C++?
2024 Autor: Lynn Donovan | [email protected]. Modificat ultima dată: 2023-12-15 23:52
Cand șterge este folosit pentru a dezaloca memorie pentru a C++ obiect de clasă, destructorul obiectului este numit înainte de memoria obiectului este dealocate (dacă obiectul are un destructor). Dacă operandul la șterge operator este o valoare l modificabilă, valoarea acesteia este nedefinit după obiect este șters.
De asemenea, întrebarea este, care este diferența dintre ștergerea și ștergerea în C++?
Ambele sunt folosite în același scop, dar totuși au unele diferențe , cel diferențe sunt: șterge este un operator, în timp ce free() este o funcție de bibliotecă. șterge eliberează memoria alocată și apelează la destructor. Dar free() de-allocatememory dar nu apelează destructor.
Se poate întreba, de asemenea, cum funcționează C++ nou? Cand nou este folosit pentru a aloca memorie pentru a C++ obiect de clasă, constructorul obiectului este apelat după ce memoria este alocată. Când alocați o matrice folosind nou operator, prima dimensiune poate fi zero - the nou operatorul returnează un pointer unic.
Se poate întreba, de asemenea, la ce folosește operatorul new și delete în C++?
C++ acceptă alocarea dinamică și dealocarea obiectelor folosind operatori noi și ștergeți . Aceste operatori alocați memorie pentru obiectele dintr-un pool numit thefree store. The nou operator apelează funcția specială operator nou , si operator de ștergere apelează funcția specială ștergerea operatorului.
Trebuie să șterg pointerii C++?
1 Răspuns. Tu nu trebuie să ștergeți asta și, în plus, nu ar trebui șterge aceasta. Dacă pământul este un obiect automat, acesta va fi eliberat automat. Deci manual ştergerea A indicator la ea, intri într-un comportament nedefinit.