Aký je hlavný rozdiel medzi odstránením [] a odstránením?
Aký je hlavný rozdiel medzi odstránením [] a odstránením?

Video: Aký je hlavný rozdiel medzi odstránením [] a odstránením?

Video: Aký je hlavný rozdiel medzi odstránením [] a odstránením?
Video: Predstavujeme Five SeveN - Gun Club Armory Gameplay 60fps 🇸🇰 2024, November
Anonim

Dôvod, prečo existujú oddelené vymazať a odstrániť operátorov je to vymazať volá onedestructor, zatiaľ čo odstrániť potrebuje vyhľadať veľkosť poľa a nazvať to mnohými deštruktormi. Prirodzene, použitie jedného tam, kde sa vyžaduje druhý, môže spôsobiť problémy.

Okrem toho, aký je rozdiel medzi free () a delete?

Rozdiely medzi odstránením operátor a zadarmo() funkciu vymazať je operátor, zatiaľ čo zadarmo() je knižničná funkcia. vymazať zadarmo alokovanej pamäte a deštruktora volaní. ale zadarmo() zrušiť pridelenie pamäte, ale nevolá deštruktor. vymazať je rýchlejší ako zadarmo() pretože operátor je vždy rýchlejší ako funkcia.

Tiež viete, čo robí odstránenie v C ++? vymazať () v C ++ Odstrániť je operátor, ktorý je používa na zničenie objektov poľa a nepoľových (ukazovateľov), ktoré sú vytvorené novým výrazom. Čo znamená Odstrániť operátor uvoľní pamäť z haldy. Ukazovateľ na objekt je notdestroyed, hodnota alebo pamäťový blok ukazuje ukazovateľ je zničené.

Aký je rozdiel medzi odstránením a odstránením?

Odstrániť a odstrániť sú definované celkom podobne, ale hlavné rozdiel medzi oni sú to vymazať znamená vymazať (t. j. sa stane neexistujúcim alebo neobnoviteľným), zatiaľ čo odstrániť konoty odoberať a usadiť sa (ale zachované v existencii).

V čom sa deštruktor líši od operátora delete?

Prvý deštruktor , nazývaný úplný objekt deštruktor , vykoná zničenie bez volania vymazať () na objekte. Druhy deštruktor , tzv vymazanie deštruktora , hovory vymazať () po zničení predmetu. Ak je objekt zničený, ale nie vymazané z haldy, volania operátor vymazať nesprávne.

Odporúča: