c++ - catch block 让我无法匹配运算符(operator)错误

标签 c++ exception stl try-catch overloading

我正在 try catch 如下所示的异常 -

try {

} catch (const std::exception& ex) {
    cout << "An exception occurred when executing query. " << ex << endl;
}

但每次我都会收到这个错误 -

no match for operator<< in std::operator<< <std::char_traits<char> >((* & std::cout), ((const char*)"An exception occurred when executing query. ")) << ex

知道我在这里做错了什么吗?

最佳答案

使用这个

cout << "An exception occurred when executing query. " << ex.what() << endl;

<< exception 中的运算符未重载类。

关于c++ - catch block 让我无法匹配运算符(operator)错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19410222/

相关文章:

c++ - Quantlib 求解器未产生与 BondFunctions::yield 相同的到期 yield

java - TDD,不可能有异常(exception)

java - Java中已检查和未检查的异常,这些断言是否正确?

C++迭代器,使用set find方法后是否需要重新设置

macos - OS X 中的并行 STL 算法

c++ - 将字符串文字传递给采用 'char *' 的函数并获得编译器警告

c++ - 我如何将堆栈转储到 Arduino 中?

c++ - 当我想退出应用程序时,如何在qt中自动调用析构函数?

java - 如何在 Spring Integration 中的异常路由器中使用根本原因异常类型

c++ - 在结构中包含一个 std::map ?可以吗?