boost::exception - how to print details?
You can use boost::diagnostic_information() to get the actual error messages and origin of the exception. i.e.
catch (const boost::exception& ex) {
// error handling
std::cerr << boost::diagnostic_information(ex);
}
For something as generic as a boost::exception
, I think you are looking for the boost::diagnostic_information
function to get a niceish string representation.
#include <boost/exception/diagnostic_information.hpp>
catch (const boost::exception& ex) {
// error handling
std::string info = boost::diagnostic_information(ex);
log_exception(info); // some logging function you have
}
To get the stack for an exception, I'd start with the StackOverflow question C++ display stack trace on exception.