本文共 511 字,大约阅读时间需要 1 分钟。
多路捕获:
程序可能有若干种不同种类的运行错误,每种错误可与一个类、一个数据类型或一个值相关。这样,在程序中就会出现多路捕获。 例程:#include#include using namespace std;class String{public: String(char* str,int si) { if(si<0||si>max) throw Size(); 大于max,抛出Size异常,回到原语句 p=new char[si]; strcpy(p,str); len=si; } class Range{ public: Range(int j):index(j){} int index; }; class Size{}; char& operator[](int k) { if(k>=0&&k out of range: "< <
String类里嵌套了Range类和Size类,如果越界,抛出一个Range异常,如果传参strlen大于max,抛出size异常
转载地址:http://qltg.baihongyu.com/