Kako deluje brisanje v C++?
Kako deluje brisanje v C++?

Video: Kako deluje brisanje v C++?

Video: Kako deluje brisanje v C++?
Video: Написание 2D-игр на C с использованием SDL Томаса Лайвли 2024, Maj
Anonim

Kdaj izbrisati je uporablja za razporeditev pomnilnika za a C++ predmet razreda, destruktor objekta je pokliče pred spominom predmeta je odpuščen (če ima objekt destruktor). Če je operand na izbrisati operaterja je spremenljiva l-vrednost, njena vrednost je nedefinirano po predmetu je izbrisan.

Vprašanje je tudi, kakšna je razlika med brisanjem in brisanjem v C++?

Oba se uporabljata za isti namen, a vseeno imata nekaj razlike , razlike so: izbrisati je anoperator, medtem ko je free() knjižnična funkcija. izbrisati sprosti dodeljeni pomnilnik in pokliče destruktor. Toda free() de-alocatememory, vendar ne pokliče destruktorja.

Lahko se tudi vprašamo, kako C++ deluje novo? Kdaj novo se uporablja za dodelitev pomnilnika za a C++ razreda, se konstruktor objekta pokliče po tem, ko je pomnilnik dodeljen. Pri dodeljevanju matrike z uporabo novo operaterja, je lahko prva dimenzija nič - the novo operator vrne edinstven kazalec.

Lahko se tudi vprašamo, kakšna je uporaba operatorja new in delete v C++?

C++ podpira dinamično dodeljevanje in odpuščanje predmetov z uporabo operatorja new in delete . Te operaterji dodeli pomnilnik za predmete iz področja, imenovanega thefree store. The novega operaterja pokliče posebno funkcijo operater nov , in operator za brisanje pokliče posebno funkcijo izbriši operaterja.

Ali moram izbrisati kazalce C++?

1 odgovor. ti ne potrebno izbrisati to in, poleg tega, ne bi smeli izbrisati to. Če je zemlja avtomatski objekt, se bo samodejno sprostila. Torej ročno brisanje a kazalec k temu greste v nedefinirano vedenje.