抛出非异常对象很不好。话虽如此,当我运行以下代码时,本来希望看到“ get it!”消息,但不会。
const char* hello = "hello";
try {
throw hello;
}
catch (const char*& e) {
std::cout << "got it ! " << std::endl;
}
catch (...) {
std::cout << "got something..." << std::endl;
}
删除&
将解决此示例,但是这里发生了什么?
这是MSVC中的错误吗?