// MT2Q2.cpp #include template class array { public: array(size_t n=5) : pT_(new T[n]), size_(n), capacity_(n) { for(size_t i=0; i void show(array& arr) { std::cout << "\n "; for(size_t i=0; i arr(3); try { arr[0] = 0; arr[1] = 1; arr[2] = 2; arr.append(3); arr.append(4); arr.append(5); arr.append(6); // will throw exception - outside bounds of array // arr[7] = 7; show(arr); array copy = arr; show(copy); } catch(std::exception& ex) { std::cout << "\n " << ex.what(); } }