Ich möchte eine Ausnahme auslösen, wenn meine C ++ - Methoden auf etwas Seltsames stoßen und nicht wiederhergestellt werden können. Ist es in Ordnung, einen std::string
Zeiger zu werfen ?
Darauf habe ich mich gefreut:
void Foo::Bar() {
if(!QueryPerformanceTimer(&m_baz)) {
throw new std::string("it's the end of the world!");
}
}
void Foo::Caller() {
try {
this->Bar(); // should throw
}
catch(std::string *caught) { // not quite sure the syntax is OK here...
std::cout << "Got " << caught << std::endl;
}
}