- D1Rect: Nagy "hülyétkapokazapróktól" topik
- gban: Ingyen kellene, de tegnapra
- Klaus Duran: 2025 dude
- sziku69: Fűzzük össze a szavakat :)
- Luck Dragon: Asszociációs játék. :)
- Magga: PLEX: multimédia az egész lakásban
- btz: Internet fejlesztés országosan!
- sh4d0w: Csak a profit - emberélet nem számít
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- RIOS Gépház: Alap vagy Profi? Két új üzleti előfizetés debütál a Hardveraprón!
Új hozzászólás Aktív témák
-
MageRG
addikt
Tisztelt Hölgyek és Urak!
class Base
{
/* ..., nincs virtual destructor */
};
class Derived: public Base
{
/* ... */
};
int main()
{
Base *basePtr = new Derived();
delete basePtr; /* (1) memory leak, de miért? */
void *ptr = (void*) new Derived(); /* tudom, borzalom */
delete ptr; /* (2) itt mi történik? */
return 0;}
Szóval a fenti agymenés lenne a kérdés:
(1)-nél gondolom azt hiszi a fordító, hogy ez egy Base objektum, ezért a származtatott osztály részeit már nem szabadítja fel.
Ez mindig így van? Van olyan fordító, ami "tudja", hogy az adott pointer ténylegesen mekkora területre mutat?
(2)-nél mi történik? Ha jól értem itt már semmilyen takarítás nincs (egy destruktor sem hívódik meg).
Elnézést ha kicsit csekély értelmű kérdés...
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Egyedi ékszerdobozka
- Lenovo magyar laptop billentyűzetre van szükséged? Akármelyik verzióban segítünk!
- PlayStation Plus Premium 24 hónapos előfizetés , egyenesen a Sony-tól!
- ÁRGARANCIA! Épített KomPhone i5 10600KF 16/32/64GB RAM RX 7600 8GB GAMER PC termékbeszámítással
- Telefon felvásárlás!! iPhone 13 Mini/iPhone 13/iPhone 13 Pro/iPhone 13 Pro Max
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Promenade Publishing House Kft.
Város: Budapest