Kazalo:

Ali ima C zbiralnik smeti?
Ali ima C zbiralnik smeti?

Video: Ali ima C zbiralnik smeti?

Video: Ali ima C zbiralnik smeti?
Video: Рефакторинг: шаблон Factory [Design Patterns] 2024, November
Anonim

C ima ne imeti avtomatsko zbiranje odpadkov . Če izgubite sled za predmetom, vas imeti kar je znano kot "uhajanje spomina". Pomnilnik bo še vedno dodeljen programu kot celoti, vendar ga nič ne bo moglo uporabiti, če ste izgubili zadnji kazalec nanj. Upravljanje pomnilniških virov je ključna zahteva za C programi.

Ali se ob upoštevanju tega zbirajo C smeti?

C++ ne potrebuje a zbiralec smeti , ker nima št smeti . V sodobnem C++ uporabljate pametne kazalce in jih zato nimate smeti.

Kakšna je tudi vloga zbiralca smeti? Zbiralci smeti so zadolženi za zbiranje in odstranjevanje odpadki in recikliranih materialov za nadaljnjo predelavo. Tipično delo dolžnosti naveden na a Zbiralec smeti primer življenjepisa deluje odpadki zbirna vozila po določeni poti, zbiranje zavrne in poroča nadzornikom.

Samo tako, kaj je zbiranje smeti C?

Zbiranje odpadkov (GC) je mehanizem, ki zagotavlja samodejno obnavljanje pomnilnika za neuporabljene pomnilniške bloke. Programerji dinamično dodeljujejo pomnilnik, a ko blok ni več potreben, jim ga ni treba izrecno vrniti sistemu s klicem free().

Kako narediti zbiralnik smeti?

Najpreprostejši način za izvedbo zbiralnika smeti je:

  1. Prepričajte se, da lahko združite globalne korenine.
  2. Prepričajte se, da lahko prečkate kopico, npr. vsaka vrednost v kopici je objekt, ki izvaja metodo Visit, ki vrne vse reference iz tega objekta.
  3. Ohranite nabor vseh dodeljenih vrednosti.

Priporočena: