面向对象程序设计第二章课后答案.doc
《面向对象程序设计第二章课后答案.doc》由会员分享,可在线阅读,更多相关《面向对象程序设计第二章课后答案.doc(4页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精品文档,仅供学习与交流,如有侵权请联系网站删除1 什么是命名空间,如何访问命名空间的成员?【解答】为了解决不同文件中同名变量的问题,C+标准中引入命名空间的概念。命名空间(namespace)是一种特殊的作用域,命名空间可以由程序员自己来创建,可以将不同的标识符集合在一个命名作用域内,这些标识符可以类、对象、函数、变量、结构体、模板以及其他命名空间等。在作用域范围内使用命名空间就可以访问命名空间定义的标识符。有3种访问方法:(1) 直接指定标识符,访问方式为:命名空间标识符名成员名 。(2) 使用using namespace命令(3) 使用using关键词声明2 什么是内联函数,它有什么特
2、点?哪些函数不能定义为内联函数?【解答】用inline关键字声明或定义的函数称为内联函数。C+中对于功能简单、规模小、使用频繁的函数,可以将其设置为内联函数。内联函数(inline function)的定义和普通函数相同,但C+对它们的处理方式不一样。在编译时,C+将用内联函数程序代码替换对它每次的调用。这样,内联函数没有函数调用的开销,即节省参数传递、控制转移的开销,从而提高了程序运行时的效率。但是,由于每次调用内联函数时,需要将这个内联函数的所有代码复制到调用函数中,所以会增加程序的代码量,占用更多的存储空间,增大了系统空间方面的开销。因此,内联函数是一种空间换时间的方案。函数体内有循环语
3、句和switch语句,递归调用的函数不能定义为内联函数。3 什么是函数重载?在函数调用时,C+是如何匹配重载函数的?【解答】函数重载是指两个或两个以上的函数具有相同的函数名,但参数类型不一致或参数个数不同。编译时编译器将根据实参和形参的类型及个数进行相应地匹配,自动确定调用哪一个函数。使得重载的函数虽然函数名相同,但功能却不完全相同。在函数调用时,C+是匹配重载函数规则如下:首先寻找一个精确匹配,如果能找到,调用该函数;其次进行提升匹配,通过内部类型转换(窄类型到宽类型的转换)寻求一个匹配,如char到int、short到int等,如果能找到,调用该函数;最后通过强制类型转换寻求一个匹配,如果
4、能找到,调用该函数。4 设置函数参数的默认值有何作用?【解答】C+中允许函数提供默认参数,也就是允许在函数的声明或定义时给一个或多个参数指定默认值。在调用具有默认参数的函数时,如果没有提供实际参数,C+将自动把默认参数作为相应参数的值5 什么叫引用,使用引用时需要注意哪些问题?【解答】引用是一个变量的别名。使用引用时,必须在定义时进行初始化,不能在定义完后再赋值。6new运算符的作用是什么?delete运算符的作用是什么?【解答】在C+程序中,new是动态分配内存的运算符,自动计算需要分配的空间。delete是撤销动态申请的内存运算符。delete与new通常配对使用,建立堆对象时使用new运
5、算符、删除堆对象时delete使用运算符。7、#include stdafx.h#include iostream using namespace std; int Min(int x1,int x2); int Min(int x1,int x2,int x3); int Min(int x1,int x2,int x3,int x4); int _tmain(int argc, _TCHAR* argv)int x1,x2,x3,x4; coutinput x1,x2,x3,x4x1x2x3x4; coutMin(x1,x2)endl; coutMin(x2,x3,x4)endl; cou
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 面向 对象 程序设计 第二 课后 答案
限制150内