<p>In a destructor, is there a way to determine if an exception is currently being processed?</p>

You can use std::uncaught_exception(), but it might not do what you think it does: see
GoTW#47
for more information.