Ne ho uno class Ache utilizza un'allocazione di memoria heap per uno dei suoi campi. La classe A è istanziata e memorizzata come campo puntatore in un'altra classe ( class B.
Quando ho finito con un oggetto di classe B, chiamo delete, che presumo chiama il distruttore ... Ma questo chiama anche il distruttore di classe A?
Modificare:
Dalle risposte, lo prendo (per favore modifica se non corretto):
deletedi un'istanza di B chiama B :: ~ B ();- che chiama
A::~A(); A::~Adovrebbe esplicitamentedeletetutte le variabili membro allocate in heap dell'oggetto A;- Alla fine il blocco di memoria che memorizza detta istanza di classe B viene restituito all'heap: quando ne veniva usato uno nuovo , allocava prima un blocco di memoria sull'heap, quindi invocava i costruttori per inizializzarlo, ora dopo che tutti i distruttori sono stati richiamati per finalizzare l'oggetto blocco in cui l'oggetto risiedeva viene restituito all'heap.