-seventy-
Welcome to my blog space.
try
{
    // 尝试执行代码...
}
catch (ExceptionName e1)    // 捕获异常,解决异常
{
    // catch 块
}
catch (ExceptionName e2)
{
    // catch 块
}
catch (ExceptionName eN)
{
    // catch 块
}
double division(int a, int b)
{
   if( b == 0 )
   {
      throw "Division by zero condition!";    // 抛出异常
   }
   return (a/b);
}
/*
    定义新的异常
        可以通过继承和重载 exception 类来定义新的异常。
        下面的实例演示了如何使用 std::exception 类来实现自己的异常:
*/

#include <iostream>
#include <exception>
using namespace std;

struct MyException : public exception    // 通过让 MyException 继承 exception,实现自定义异常
{
    const char * what() const throw ()
    {
        return "C++ Exception";
    }
};

int main()
{
    try
    {
        throw MyException();
    }
    catch (MyException& e)
    {
        std::cout << "MyException caught" << std::endl;
        std::cout << e.what() << std::endl;
    }
    catch (std::exception& e)
    {
        //其他的错误
    }
}

 

posted on 2023-07-31 17:51  -seventy-  阅读(14)  评论(0)    收藏  举报