Video: Si funksionon fshirja në C++?
2024 Autor: Lynn Donovan | [email protected]. E modifikuara e fundit: 2023-12-15 23:53
Kur fshij është përdoret për të shpërndarë kujtesën për një C++ objekti i klasës, shkatërruesi i objektit është thirrur përpara kujtesës së objektit është shpërndahet (nëse objekti ka një shkatërrues). Nëse operandi në fshij operatori është një vlerë l e modifikueshme, vlera e saj është i papërcaktuar pas objektit fshihet.
Gjithashtu pyetja është, cili është ndryshimi midis fshirjes dhe fshirjes në C ++?
Të dyja përdoren për të njëjtin qëllim, por megjithatë ato kanë disa dallimet , dallimet janë: fshij është një operator ndërsa free() është një funksion bibliotekë. fshij lironi memorien e alokuar dhe destruktorin e thirrjeve. Por free() de-allocatememory por nuk thërret destructor.
Dikush mund të pyesë gjithashtu, si funksionon C++ i ri? Kur i ri përdoret për të ndarë memorien për a C++ objekti i klasës, konstruktori i objektit thirret pasi të jetë ndarë memoria. Kur alokoni një varg duke përdorur i ri operatori, dimensioni i parë mund të jetë zero - the i ri operatori kthen një tregues unik.
Dikush mund të pyesë gjithashtu, çfarë është përdorimi i operatorit new and delete në C++?
C++ mbështet shpërndarjen dinamike dhe shpërndarjen e objekteve duke përdorur operatorë të rinj dhe fshij . Këto operatorët caktoni memorie për objektet nga një grup i quajtur dyqani i lirë. Të operator i ri thërret funksionin special operator i ri , dhe fshini operatorin thërret funksionin special fshirja e operatorit.
A duhet të fshij treguesit C++?
1 Përgjigje. Ju nuk e bëni duhet të fshihet atë, dhe, për më tepër, ju nuk duhet fshij atë. Nëse toka është një objekt automatik, ai do të çlirohet automatikisht. Pra, me dorë duke fshirë a tregues ndaj tij, ju kaloni në një sjellje të papërcaktuar.