OT: C++ - jak zjistit zda nebyla uvolnena pamet pred destruovanimobjektu?

Libor Chocholaty chocholaty na gncz.cz
Čtvrtek Červenec 26 11:35:55 CEST 2001


Stanislav Meduna wrote:

> Libor Chocholaty schrieb in Nachricht <3B5D9FB5.EF3D32EA na gncz.cz>...
>
> >Vase oci bych potreboval. Nechcete se stavit? Muzu vam oskenovat strukturu
> >objektu, ktera se vytvari a co se tam priblizne deje, vy prijdete a najdete
> >to. Jo? :-)
>
> No ak sa na to pozerate takto, je najvyssi cas tu strukturu zahodit
> a navrhnut slusne. Tym skor, ak ste sam jej autorom :-)))
>

Bohuzel nejsem jejim autorem. Kdybych byl jejim autorem, tak vim, jak to
funguje a vim, kde si na to pocihat.

>
> >Jestli byste to nasel, asi bych sel delat hrobnika.
>
> Coby nenasiel, akurat by si za to asi nechal dobre zaplatit.
> Zvlast chyby, ktore uz niekedy clovek urobil sam, sa ani v cudzom
> kode nehladaju az tak tazko :-)))
>
> Zopar tipov:
> - STL vector<> a predpoklad, ze jeho objekty zostanu na mieste
>   (_velmi_ oblubene, pri testoch s mensim poctom objektov
>   vsetko bezproblemovo chodi, potom predvadzate veci sefom
>   a bum :-))
>

STL se nepouziva.

>
> - cyklicka struktura, ktora si pri ruseni zahryzne do vlastneho
>   chvosta (zvlast navrhy pouzivajuce reference-counting
>   vedia veci riadne zamotat)

Neni ani cyklicka.

>
>
> - klient a server (metoda a jej volajuci, ...), ktore sa nedohodli
>   na tom, komu objekt "patri"
>

Ani to. Jde o to, ze se predavaji ukazatele na objekty a v destruktorech se pak
objekt, na ktery je ukazovano z vice objektu, rusi vicekrat. Psychicky se
pripravuju na velike debugovani. Dam si breakpoint do vsech metod trid, ktere s
tim maji co do cineni, vezmu si _velky_ papir a proste to nakreslim a
okomentuju.

>
> - ...
>
> Zdravi
> --
>                                                     Stano

Taktez zdravim a preju co nejmin podobnych zakysu.

Libor Chocholaty



Další informace o konferenci Linux