Hoe werk delete in C++?
Hoe werk delete in C++?

Video: Hoe werk delete in C++?

Video: Hoe werk delete in C++?
Video: Revisiting Pointers: new and delete Keywords in CPP | C++ Tutorials for Beginners #50 2024, November
Anonim

Wanneer skrap is gebruik om geheue toe te ken vir 'n C++ klasobjek, die voorwerp se vernietiger is geroep voor die voorwerp se geheue is gedeallokeer (as die voorwerp 'n vernietiger het). As die operand aan die skrap operateur is 'n veranderbare l-waarde, sy waarde is ongedefinieer na die voorwerp word geskrap.

Die vraag is ook, wat is die verskil tussen delete en delete in C++?

Albei word vir dieselfde doel gebruik, maar tog het hulle 'n paar verskille , die verskille is: skrap is 'n operateur terwyl free() 'n biblioteekfunksie is. skrap bevry die toegewese geheue en oproep vernietiger. Maar gratis() de-allocatememory maar noem nie destructor nie.

Mens kan ook vra, hoe werk C++ new? Wanneer nuut word gebruik om geheue toe te ken vir 'n C++ klasobjek, word die objek se konstruktor genoem nadat die geheue toegewys is. Wanneer 'n skikking toegewys word deur die nuut operateur, kan die eerste dimensie nul wees - die nuut operateur gee 'n unieke wyser terug.

Mens kan ook vra, wat is die nut van nuwe en verwyder operateur in C++?

C++ ondersteun dinamiese toekenning en verdeling van voorwerpe met behulp van die nuwe en verwyder operateurs . Hierdie operateurs ken geheue toe vir voorwerpe uit 'n swembad genaamd die gratis winkel. Die nuwe operateur roep die spesiale funksie operateur nuut , en die verwyder operateur noem die spesiale funksie operateur verwyder.

Moet ek wysers C++ uitvee?

1 Antwoord. Jy doen nie moet uitvee dit, en boonop moet jy nie skrap Dit. As die aarde 'n outomatiese voorwerp is, sal dit outomaties bevry word. So deur met die hand uitvee a wyser daarvoor gaan jy in ongedefinieerde gedrag.