[ LUGOS ] free, delete ...

polz polz na writeme.com
Tor Jun 23 05:16:56 CEST 1998


>in bi rad izvedel, ali kaze 'pointer' na blok pomnilnika, dodeljen z
>malloc() oz. blok pomnilnika, ki je bil dodeljen staticno, je pa to
>tezko izvesti na enostaven nacin (ce ti primerjava pointer == &str[0] ne
>zadostuje seveda). Ce je str globalna spremenljivka (ce je lokalna, se
>je prostor zanjo dodelil dinamicno s kopice) in ce ves, kam se je image
>programa (vkljucno z data/bss) nalozil, sicer lahko poskusis gledati,
Kako izvem, kam se je nalozil ?
>ali kazalec pade v to obmocje, vendar pa taksno pocetje verjetno ni
>prevec ucinkovito (se manj pa lepo), tako da bi verjetno bilo bolje
>ubrati kaksno drugo pot za resitev problema (kakrsenkoli ze je), kot je
>z ugotavljanjem ali kaze nek kazalec na dinamicno ali na staticno
>dodeljen pomnilnik..
Ena izmed idej, ki jih imam je ta, da bi napisal neke vrste
garbage collection, ki bo brisal vse neuporabljene dinamicno alocirane 
objekte(kako je objekt alociran bo moral clovek povedati ob inicializaciji).
V zvezi s to resitvijo se pojavlja drugo vprasanje - 
kako naj izvem, ali je bil konstruktor klican kot konstruktor staticno 
ali dinamicno alociranega objekta.
 
Vendar se mi zdi tudi gledanje, kam kaze pointer (na heap ali na stack), 
kar lepa resitev,  ki pa je ne znam implementirati. Zopet torej na pomoc!




Dodatne informacije o seznamu Starilist