How to throw std::exceptions with variable messages?
The standard exceptions can be constructed from a std::string: #include <stdexcept> char const * configfile = “hardcode.cfg”; std::string const anotherfile = get_file(); throw std::runtime_error(std::string(“Failed: “) + configfile); throw std::runtime_error(“Error: ” + anotherfile); Note that the base class std::exception can not be constructed thus; you have to use one of the concrete, derived classes.