CS202 5- ‹#›
Exceptions w/ Classes (version2)
nstruct bad_index {          //bad index exception type
n  long index;
n};
n
nclass dyn_a1 {
n  public:
n    explicit dyn_a1(INDEX) throw(bad_alloc); //constructor
n    ~dyn_a1() throw();                       //destructor
n    int &operator[](INDEX) throw(bad_index); //subscript op
n  private:
n    dyn_a1(const dyn_a1 &);            //prohibit copy ctor
n    dyn_a1 &operator=(const dyn_a1 &); //prohibit assign
n    INDEX d1;               //# of elements in 1D array
n    int* a0;                //base address of all elements
n};
n