Ú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... -
MageRG
addikt
válasz
jattila48 #3184 üzenetére
Nem értek annyira a C++ programozáshoz, de nekem fura hogy egy static memberbe akarsz belepakolni egy másképp példányosodó valamit.
A HandleClass::mfp közös az összes HC-ben, ugyanazt a BodyClass példány memberét hívja.
De a HandleClass::f meg egy-egy külön BodyClass példány membert hív, ami a konstruktorban jön létre.
Vagyis a két hívás *vára nem ugyanazt csinálja.
Akkor lenne ugyanaz, ha a *pimpl member is statikus lenne.De ez csak az én "két centem".
Ú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!
- Milyen processzort vegyek?
- Milyen billentyűzetet vegyek?
- exHWSW - Értünk mindenhez IS
- Egyre csak fejlődik az AI, emberek tízezreit rúgja majd ki a BT
- Hálózati / IP kamera
- PlayStation 5
- Autós topik látogatók beszélgetős, offolós topikja
- World of Tanks - MMO
- Yettel topik
- Macska topik
- További aktív témák...
- ÁRGARANCIA!Épített KomPhone i5 10600KF 16/32/64GB RAM RX 6600 8GB GAMER PC termékbeszámítással
- Apple iPhone 13 128GB, Kártyafüggetlen, 1 Év Garanciával
- Zebra ZP505 EPL - Hőpapíros címkenyomtató
- Bomba ár! Dell Latitude E6440 - i5-4GEN I 8GB I 320GB I 14" HD I HDMI I Cam I W10 I Garancia!
- Lenovo ThinkCentre M720s SFF / M920T tower -Számla, garancia, WIN11
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: PC Trade Systems Kft.
Város: Szeged