Boost logo

Boost :

From: Peter Dimov (pdimov_at_[hidden])
Date: 2006-11-15 12:18:22


Janek Kozicki wrote:
> Peter Dimov said: (by the date of Wed, 15 Nov 2006 15:54:14 +0200)
>
>> e.dismiss();
>
> why this? destructor of e does the work. No need to e.dismiss()
> Dave pointed out that std::uncaught_exception() inside e's destructor
> can check the conditions upon which the destructor is called and to
> the necessary work depending on it.

uncaught_exception may still return true in a destructor that is called
during an ordinary return.

~X: called during stack unwinding

calls f()

void f()
{
    Y y;
} // ~Y is called here, uncaught_exception is true


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk