第11章习题答案(共7页).doc
《第11章习题答案(共7页).doc》由会员分享,可在线阅读,更多相关《第11章习题答案(共7页).doc(7页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上十一章 课后习题答案一、选择题1. 下列关于异常的叙述错误的是( A )。 A编译错属于异常,可以抛出B运行错属于异常 C硬件故障也可当异常抛出D只要是编程者认为是异常的都可当异常抛出2. 下列叙述错误的是( B )。 Athrow语句须书写在时语句块中 Bthrow语句必须在try语句块中直接运行或通过调用函数运行 C一个程序中可以有try语句而没有throw语句Dthrow语句抛出的异常可以不被捕获3. 关于函数声明 float fun(int a,int b)throw,下列叙述正确的是( B )。 A表明函数抛出float类型异常 B表明函数抛出任何类型异常
2、C表明函数不抛出任何类型异常D表明函数实际抛出的异常4. 下列叙述错误的是(C)。 Acatch()语句可捕获所有类型的异常 B一个try语句可以有多个catch语句 Ccatch()语句可以放在catch语句组的中间D程序中try语句与catch语句是一个整体,缺一不可二、简答题1. 什么是命名空间,怎样定义命名空间?答: 命名空间是一个保持唯一名称的区域,其实质是一个作用域。语法为: namespace A /定义一个命名空间A int a; float b; void f() 其中namespace为定义的关键字,A为命名空间的名字。2. 什么是异常,什么是异常处理?答:在编写程序时,总
3、是会不可避免地遇到一些问题。尤其是在设计一个类时,总要包含一些错误处理。C+提供了异常处理机制,它把错误检查和错误处理分开。如设计类专门检查各种可能出现的错误, 类的使用者则提供具体的错误处理程序。3. C+异常处理处理有哪些特点?答:异常处理的思路是:发现错误的函数可以不具有错误处理能力。这个函数会引发一个异常,希望它的调用者能捕获这个异常并处理这个错误。如果调用者也不能处理这个错误,还可以联系给上层调用者处理。这种传播会一直继续到异常被处理为止。这样低层的函数可以着重解决具体问题,上层调用者来考虑对不同的异常进行相应的处理。4. C+异常处理中怎样处理构造与析构的关系?答:C+异常处理的真
4、正能力,不仅在于它能够处理不同类型的异常,同时它具有异常抛掷前构造的所有局部对象自动释放能力。程序中如果在try块中定义了类对象,当出现异常时,从try块开始到抛出异常之间构造的所有对象进行析构,析构的顺序与构造的顺序相反。5. 请简要写一个c+异常处理的例子,来说明try, catch和 throw之间的关系?答: try int m,n; cinmn; if(n = 0) throw n; cout”m/n = ”m/nendl;catch(int) cout”Error of dividing zero”endl; 上面是一个处理除零异常的例子,必须使用try语句来捕获异常。在执行try
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 11 习题 答案
限制150内