在下面描述的情况下使用cerr是好的风格吗?

try
    {
    cout << a + b;
    }
    catch(const IntException& e)
    {
        cerr << "Exception caught: " << typeid(e).name(); //using cerr not cout
    }
    catch(...)
    {
        cerr << "Unknown exception.";//using cerr not cout
    }

还是应该使用cout?查看代码中的注释。

最佳答案

stderr是传统的流,用于发送错误消息(以便OS/shell/任何东西都可以从“正常”输出中分别捕获错误消息),是的,请使用std::cerr!

对于仅将异常打印出来捕获异常是否比让异常从应用程序中传播出去更好,我没有任何评论。

关于c++ - 我要用cerr吗,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5058716/

10-12 19:18