c++部分简答题示例
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
简答题题库
1、什么是面向对象的程序设计?它的几个特征是什么?
面向对象的程序设计:它的整个程序由一系列相互作用的对象构成,对象之间的交互通过发送消息来实现,对象通过响应消息来实现程序的功能。
它有四个基本的特征,即抽象、封装、继承和多态性。
2、面向对象程序设计的基本特征有哪些?简述各种特征的含义。
主要特征:1)、抽象,即忽略当前主题中与目标无关的那些方面,把它的主要特征抽取出来。2)、封装,它是将抽象得到的数据成员和代码相结合,形成一个有机的整体,并且,封装可以隐藏内部的细节。3)、继承,它提供了代码重用的一种方式,派生类可以重用基类的属性和行为。4)、多态性,它是指不同类的对象对同一消息作出不同反应,即c++的代码可以根据运行情况的不同而执行不同的操作。
3、简述类和对象的含义。面向对象程序设计和面向过程程序设计的主要区别是什么?
类:是指具有相同的属性和操作方法,并遵守相同规则的对象的集合。
对象:是包含现实世界物体特征的抽象实体,每个对象有内部的属性和操作方法。
主要区别:
面向对象的程序设计:它的整个程序由一系列相互作用的对象构成,对象之间的交互通过发送消息来实现,对象通过响应消息来实现程序的功能。编程时可以不知道对象的内部实现细节。
面向过程的程序设计:程序由一系列的函数构成,程序的实现通过函数的顺序执行来实现。编程时需要清楚程序实现的每一步细节。
4、类和结构有什么异同?
结构是类的一种特例,在结构体中也可以定义成员函数、构造函数和析构函数,成员也可使用private、protected、public。结构和类的区别是:在缺省情况下,结构中默认方式是所有成员都是公有的,而在类中是私有的。
5、什么是构造函数?什么是析构函数?构造函数和析构函数的作用是什么?什么时候需要自析构函数有哪些特点?
构造函数是和类同名的成员函数。
析构函数是一种特殊的成员函数,名字是类名前加一个“~”符号。
构造函数的作用:用于新建对象的初始化工作。
析构函数的作用:用于在撤销对象前,完成一些清理工作,比如:释放内存等。
每当创建对象时,需要添加初始化代码时,则需要定义自己的构造函数;而对象撤销时,需要自己添加清理工作的代码时,则需要定义自己的析构函数。
6、c++中,什么是函数重载?什么是运算符重载?
所谓重载就是重新赋予新的含义。函数重载就是对一个已有的函数赋予新的含义,使之实现新的功能。运算符重载即对已有的运算符通过函数赋予新的含义,使之显现新的运算符功能,运算符重载实质上就是函数的重载。7、函数重载的主要作用是什么?调用不同的重载函数是在编译时决定还是在运行时决定?函数重载时参数个数不同时,能否有缺省参数,为什么?
函数重载主要作用是:用同一个函数名可以去调用不同参数或功能的函数,即用同一个函数实现不同的操作。
编译时决定
函数重载时参数个数不同时,不能有缺省参数。因为:有缺省参数时,就会发生二义性,编译出错。
8、什么是友元函数?友元函数的作用是什么?
在一个类中,用friend声明的非本类函数就是友元函数。
友元函数的作用:可以直接访问本类的私有成员,提高编程的灵活性和程序执行效率。
9、什么是简单继承?什么是多重继承?在软件开发过程中,继承有什么好处?
简单继承:派生类的基类只有一个的继承方法。
多重继承:派生类的基类同时有多个时的继承方法。
继承实现了软件重用,缩短了软件开发过程。
10、什么是多态性?C++中,多态性是如何实现的?
多态性:是指允许不同类的对象对同一消息作出响应,即实现“一个接口,多种方法”。
编译多态性也称静态多态性,它是通过函数重载和运算符重载实现的。
运行多态性也称动态多态性,它是。
11、在C++中有哪两种多态性,两种多态性具体含义是什么?
编译多态性也称静态多态性:在程序编译时系统就能决定调用的是哪个函数,通过函数重载和运算符重载实现。
运行多态性也称动态多态性:在程序运行过程中才动态地确定操作所针对的对象,通过继承和虚函数来实现。