exceptexceptionobject.cpp

来自「C++ sample code, for the book: C++ blac」· C++ 代码 · 共 34 行

CPP
34
字号
#include <iostream>
#include <exception>
using namespace std;

class Divide_by_zero_exception : public exception
{
    char* error_message;
public:
    virtual const char* what(){return error_message;}
    Divide_by_zero_exception(){error_message = "Error: division by zero.";}
};

int main ()
{
   float op1, op2;

   cout << "Enter the two floating point numbers to divide: ";
   cin >> op1 >> op2;

   try
   {
      if(op2 != 0)
          cout << op1 << "/" << op2 << " = " << op1/op2 << endl;
      else
          throw Divide_by_zero_exception();
   }
   catch (Divide_by_zero_exception e)
   {
      cout << e.what() << endl;
   }

   return 0;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?