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, gregod at, cpdaniel at, john at