template <class T> T& Array<T>::operator[] (int n) { assert(n >= 0 && n < size); //检查下标是否越界 return list[n]; //返回下标为n的数组元素 } 主函数如何捕捉异常
时间: 2023-07-16 09:14:08 浏览: 129
在主函数中,可以使用try-catch语句来捕捉异常。具体实现如下:
```c++
int main() {
Array<int> arr(5); // 创建一个长度为5的整型数组
try {
arr[6] = 1; // 尝试访问下标为6的数组元素,会抛出异常
}
catch(const char* msg) { // 捕捉 const char* 类型的异常
std::cerr << "Exception caught: " << msg << '\n';
}
return 0;
}
```
在上述代码中,当访问下标为6的数组元素时,会触发 `assert(n >= 0 && n < size)` 语句抛出一个 const char* 类型的异常。程序会进入 catch 语句块中,输出异常信息并结束程序。
阅读全文