Quando si esce dall'ambito del blocco catch, viene richiamato il distruttore di eccezioni? (Nel caso in cui non lo si rilancia)eccezione con distruttore non virtuale C++
Supponiamo che abbia classe A e che il suo distruttore non sia virtuale. B eredita A. Supponiamo qualche funzione gettato oggetto della classe B come eccezione, ed è stato catturato da un blocco catch
catch(A& a){
...
}
Se il distruttore eccezione dovrebbe essere chiamato quando andare fuori portata di cattura, in in questo caso verrà chiamato solo il distruttore della classe base A?
Cornstalks: live trial risultato nel chiamare entrambi distruttore di classe.
Contrasta la mia logica. Spiegare qualcuno?
Sono un po 'interessato al motivo per cui fai questa domanda; è una domanda molto valida, non molto di base, ma indica che ti interessa il momento in cui viene chiamato il distruttore della tua eccezione, che normalmente non farebbe. –
Huh, non sono sicuro di quest'ultima parte. –
@ MarcusMüller: Cosa c'è di sbagliato nel voler acquisire conoscenze sugli strumenti che usiamo? –