Ú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!
- ÁRGARANCIA!Épített KomPhone i5 12400F 16/32/64GB RAM RTX 3060 12GB GAMER PC termékbeszámítással
- Honor 90 512GB, Kártyafüggetlen, 1 Év Garanciával
- Endgame Gear gamer egerek /OP1 8K, XM2we, XM1R, XM1 RGB (fehér/fekete/lila)/
- KARÁCSONYI AKCIÓK! GARANCIA, SZÁMLA - Windows 10 11, Office 2016 2019 2021,2024, vírusírtók, VPN
- GYÖNYÖRŰ iPhone SE 2020 128GB White -1 ÉV GARANCIA - Kártyafüggetlen, MS3584
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: BroadBit Hungary Kft.
Város: Budakeszi

