- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
C++异常机制试题及答案整理
姓名:____________________
一、单项选择题(每题2分,共10题)
1.以下关于C++异常处理的描述,错误的是:
A.异常处理是C++语言的一个重要特性
B.try块用来包围可能抛出异常的代码
C.catch块用来捕获和处理异常
D.throw语句用于抛出一个异常
2.以下哪个关键字用于声明一个异常处理块的开始?
A.try
B.catch
C.throw
D.finally
3.以下哪个关键字用于声明一个异常处理块的结束?
A.try
B.catch
C.throw
D.finally
4.在C++中,以下哪种类型的对象可以抛出异常?
A.基本数据类型
B.类对象
C.数组
D.以上都是
5.以下哪个函数用于注册一个异常处理程序?
A.register_exception_handler
B.set_exception_handler
C.add_exception_handler
D.Noneoftheabove
6.在C++中,以下哪个关键字用于定义一个异常处理块的异常类型?
A.catch
B.throw
C.try
D.finally
7.以下哪个关键字用于抛出一个异常?
A.throw
B.catch
C.try
D.finally
8.在C++中,以下哪个关键字用于定义一个异常处理块的开始?
A.try
B.catch
C.throw
D.finally
9.以下哪个关键字用于定义一个异常处理块的结束?
A.try
B.catch
C.throw
D.finally
10.在C++中,以下哪个关键字用于注册一个异常处理程序?
A.register_exception_handler
B.set_exception_handler
C.add_exception_handler
D.Noneoftheabove
二、填空题(每空2分,共5题)
1.在C++中,用于声明一个异常处理块的开始的关键字是_______。
2.在C++中,用于声明一个异常处理块的结束的关键字是_______。
3.在C++中,用于抛出一个异常的关键字是_______。
4.在C++中,用于捕获和处理异常的关键字是_______。
5.在C++中,用于注册一个异常处理程序的关键字是_______。
三、编程题(共20分)
编写一个C++程序,其中包含一个函数,该函数尝试执行一些可能导致异常的操作。在主函数中,使用try-catch块捕获并处理这些异常。
```cpp
#includeiostream
#includestdexcept
voiddoSomething(intx){
if(x==0){
throwstd::runtime_error(Divisionbyzero);
}
std::coutResult:10/xstd::endl;
}
intmain(){
try{
doSomething(0);
}catch(conststd::runtime_errore){
std::coutCaughtexception:e.what()std::endl;
}
return0;
}
```
二、多项选择题(每题3分,共10题)
1.以下哪些是C++中常见的异常类型?
A.标准异常
B.用户定义异常
C.构造函数异常
D.析构函数异常
2.在C++中,以下哪些语句可以抛出异常?
A.thrownewException();
B.return;//当函数返回时
C.throwstd::exception(Customexceptionmessage);
D.throw10;//抛出一个整数值
3.以下关于C++异常处理的描述,正确的是:
A.异常处理可以防止程序因为错误而终止。
B.try块可以包含多个catch块。
C.catch块可以捕获任何类型的异常。
D.catch块可以捕获基类异常,同时也可以捕获派生类异常。
4.在C++中,以下哪些是处理异常的有效方式?
A.使用try-catch块捕获异常。
B.使用throw语句抛出异常。
C.使用finally块执行清理代码。
D.使用try块捕获异常后,可以再次抛出异常。
5.以下哪些是C++中try-catch块的正确使用方式?
A.try块后必须紧跟至少一个catch块。
B.catch块可以捕获多个异常类型。
C.catch块可以捕获基类异常,也可以捕获派生类异常。
D.
您可能关注的文档
最近下载
- 【冲刺实验班】河北衡水中学19中考提前自主招生数学模拟试卷(6(1).docx VIP
- 品酒师考试:白酒品酒师学习资料.docx VIP
- 品酒师考试:葡萄酒品酒师必看题库知识点(强化练习).docx VIP
- 【冲刺实验班】江苏苏州高级中学2021中考提前自主招生数学模拟试.doc VIP
- 品酒师考试:白酒品酒师测试题(强化练习).docx VIP
- 品酒师考试:品酒师考试测试题(强化练习).docx VIP
- 【冲刺实验班】广东深圳高级中学2019中考提前自主招生数学模拟试.docx VIP
- 品酒师考试葡萄酒品酒师.doc VIP
- 【冲刺实验班】广东执信中学19中考提前自主招生数学模拟试卷(1.doc VIP
- 汉字与中华传统文化 (14).pdf
文档评论(0)