Poco Exception例子

Poco Exception提供的宏挺方便的。。

#include "Poco/Exception.h"

#include <iostream>

POCO_DECLARE_EXCEPTION( , MyException, Poco::Exception )
POCO_DECLARE_EXCEPTION( , MyFatalException, Poco::Exception )


POCO_IMPLEMENT_EXCEPTION( MyException, Poco::Exception, 
    "Something really bad happened..." )
POCO_IMPLEMENT_EXCEPTION( MyFatalException, Poco::Exception, 
    "Something really really bad happened..." )

void reallyBad () 
{
    throw MyException();
}

void reallyReallyBad ()
{
    throw MyFatalException();
}

int main( void )
{
    try {
        reallyBad();
    } catch ( MyException& ex ) {
        std::cout << ex.displayText() << std::endl;
    } catch ( MyFatalException& ex ) {
        std::cout << ex.displayText() << std::endl;
    }

    try {
        reallyReallyBad();
    } catch ( MyException& ex ) {
        std::cout << ex.displayText() << std::endl;
    } catch ( MyFatalException& ex ) {
        std::cout << ex.displayText() << std::endl;
    }
    system( "pause" );
    return 0;
}

输出:

Something really bad happened...
Something really really bad happened...
请按任意键继续. . .
原文地址:https://www.cnblogs.com/Leo-Forest/p/3365490.html