自定义异常类
来源:互联网 发布:淘宝自动回复经典语句 编辑:程序博客网 时间:2024/06/05 19:58
#include <iostream>using namespace std;class MyArray{public:MyArray(int size);~MyArray();public:int & operator[](int index);int getLen();/*1) 抛出异常eNegative 2)index = 0 抛出异常 eZero 3)index>1000抛出异常eTooBig 4)index<10 抛出异常eTooSmall 5)eSize类是以上类的父类,*/class eSize{public:eSize(int size){m_size = size;}virtual void printS(){cout<<"eSize::size:"<<m_size<<endl;}protected:int m_size;};class eNegative:public eSize{public:eNegative(int size):eSize(size){cout<<"eNegative"<<endl;}void printS(){cout<<"eNegative::size:"<<m_size<<endl;}};class eZero:public eSize{public:eZero(int size):eSize(size){cout<<"eZero"<<endl;}void printS(){cout<<"eZero::size:"<<m_size<<endl;}};class eTooBig:public eSize{public:eTooBig(int size):eSize(size){cout<<"eTooBig"<<endl;}void printS(){cout<<"eTooBig::size:"<<m_size<<endl;}};class eTooSmall:public eSize{public:eTooSmall(int size):eSize(size){cout<<"eTooSmall"<<endl;}void printS(){cout<<"eTooSmall::size:"<<m_size<<endl;}};protected:private:int *m_space;int m_size;};MyArray::MyArray(int size){if (size<0){throw eNegative(size);} else if(size==0){throw eZero(size);}else if (size>1000){throw eTooBig(size);}else if(size<3){throw eTooSmall(size);}m_space = new int[size];m_size = size;}MyArray::~MyArray(){if (m_space!=NULL){delete[] m_space;m_size = 0;}}int & MyArray::operator[](int index){return m_space[index];}int MyArray::getLen(){return m_size;}int main(){try{MyArray a(2);for (int i =0;i<a.getLen();i++){a[i] = i+1;printf("a:%d\n",a[i]);}}catch (MyArray::eSize &e){e.printS();//cout<<e.<<endl;}catch (...){cout<<"未知异常"<<endl;}system("pause");return 0;}
0 0
- C# 自定义异常类
- 自定义异常处理类
- 自定义异常类
- c# 自定义异常类
- Java自定义异常类
- 自定义异常类
- java自定义异常类
- 自定义异常类简介
- 自定义异常类
- java自定义异常类
- 自定义异常类
- 自定义异常类
- Java自定义异常类
- java 自定义异常类
- 自定义异常类
- php自定义异常类
- java自定义异常类
- 自定义异常类
- 中缀表达式求值(模板)
- EmguCV提取轮廓的一个例子
- 【转】VS2010 RDLC报表 矩阵 详解 分组、总计、表头、显示方向、序号
- nginx做反向负载均衡,后端服务器获取真实客户端ip
- perl学习笔记-----------------------(2)
- 自定义异常类
- adb远程调试
- 平时积累
- Remove Duplicates from Sorted List II
- Duilib学习笔记(一)
- sqlmap常用命令语句
- Java学习之路--抽象类
- 齐次坐标
- Django生成表和反向生成Model