Portál AbcLinuxu, 13. července 2025 21:22


Dotaz: Smazání neexistující proměnné

Wan-To avatar 17.3.2006 21:17 Wan-To | skóre: 16 | blog: WanBlog | Čelákovice
Smazání neexistující proměnné
Přečteno: 100×
Odpovědět | Admin
Co se stane, když pomocí delete smažu proměnnou, která už jednou smazána byla nebo která vůbec nebyla vytvořená pomocí new?
Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

David Watzke avatar 17.3.2006 21:37 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: Smazání neexistující proměnné
Odpovědět | | Sbalit | Link | Blokovat | Admin
V jakém programovacím jazyce? :-)
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
17.3.2006 21:38 Sinuhet | skóre: 31
Rozbalit Rozbalit vše Re: Smazání neexistující proměnné
Podle paticky bych si tipnul Javu.
Heron avatar 17.3.2006 21:39 Heron | skóre: 53 | blog: root_at_heron | Olomouc
Rozbalit Rozbalit vše Re: Smazání neexistující proměnné
Odpovědět | | Sbalit | Link | Blokovat | Admin
Hmm, tak tomu říkám dotaz. Co takhle (aspoň) napsat o jaký programovací jazyk se jedná?

Předpokládám, že máte na mysli C++:

Nemaže se proměnná, ale objekt na který ta proměnná ukazuje. Po delete se provede destruktor daného objektu a uvolní se paměť, kterou objekt zabíral. Ale proměnná stále ukazuje na jeho původní adresu (kde ovšem nic není). Dobrá praxe je, po delete x; vynulvat proměnnou na null. x = null;
Heron
17.3.2006 21:56 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: Smazání neexistující proměnné
Odpovědět | | Sbalit | Link | Blokovat | Admin
Jde-li o C++, pak

Co se stane, když pomocí delete smažu proměnnou, která už jednou smazána…

Viz C++ FAQ Lite.

…nebo která vůbec nebyla vytvořená pomocí new?

Viz C++ FAQ Lite.

Stručně shrnuto: v obou případech není chování definováno, může se stát naprosto cokoli.

17.3.2006 22:02 Sinuhet | skóre: 31
Rozbalit Rozbalit vše Re: Smazání neexistující proměnné
Odpovědět | | Sbalit | Link | Blokovat | Admin
DieHard.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.