面向对象方法学试题

面向对象方法学试题

ID:15995121

大小:53.50 KB

页数:5页

时间:2018-08-07

面向对象方法学试题_第1页
面向对象方法学试题_第2页
面向对象方法学试题_第3页
面向对象方法学试题_第4页
面向对象方法学试题_第5页
资源描述:

《面向对象方法学试题》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、说到面向对象的三大特性:封装性、继承性和多态性。那么我们先简单的了解一下三大特性:(1)封装性:封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。在C++中类中成员的属性有:public,protected,private,这三个属性的访问权限依次降低。(2)继承性:继承是指这样一种能力:它可以使用现有类的所有功能,并在无需重新编写原来的类的情况下对这些功能进行扩展。(3)多态性:多态性(polymorphisn)是允许你将父对象设置成为和一个或更多的他的子对象相等的技术,赋值之后,父对象就可以根据当前赋值给它的子对象

2、的特性以不同的方式运作。简单的说,就是一句话:允许将子类类型的指针赋值给父类类型的指针。实现多态,有二种方式,覆盖,重载。覆盖,是指子类重新定义父类的虚函数的做法。重载,是指允许存在多个同名函数,而这些函数的参数表不同(或许参数个数不同,或许参数类型不同,或许两者都不同)。1、C++中空类默认产生哪些类成员函数?答案:对于一个空类,编译器默认产生4个成员函数:(1)默认构造函数(2)析构函数(3)拷贝构造函数(4)赋值函数 2、结构是否可以有构造函数、析构函数及成员函数?如果可以,那么结构和类还有什么区别吗?答案:区别是class中变量默认是private,struct中的变量默认是

3、public。class继承默认是private继承,而struct继承默认是public继承。struct可以有构造函数、析构函数,之间也可以继承甚至是多重继承,等等。C++中的struct其实和class意义一样,唯一不同就是struct里面默认的访问控制是public,class中默认访问控制是private。C++中存在struct关键字的唯一意义就是为了让C程序员有个归属感,是为了让C++编译器兼容以前用C开发的项目。 3、下面程序打印出的结果是什么?1234567891011121314#includeusingnamespacestd;  class

4、base{private:    intm_i;    intm_j;public:    base(inti):m_j(i),m_i(m_j){}    base():m_j(0),m_i(m_j){}    intget_i(){returnm_i;}    intget_j(){returnm_j;}};  intmain(){    baseobj(98);    cout<

5、始化变量顺序是根据成员变量的声明顺序来执行的,因此,先初始化m_i,但此时m_j还未初始化,m_i会被赋予一个随机值。改变一下成员变量的声明顺序可以得到预想的结果。答案:输出结果第一个为随机数,第二个是98。 4、下面这个类声明正确吗?为什么?1234classA {    constintSize=0;};解析:这道程序题存在着成员变量问题。常量必须在构造函数的初始化列表里初始化或者将其设置成static。答案:正确的程序如下:1234567classA{    A()    {        constintSize=1;    }};或者:1234classA{    stat

6、icconstintSize=1;}; 5、析构函数可以为virtual型,构造函数则不能,为什么?答案:虚函数采用一种虚调用的办法。虚调用是一种可以在只有部分信息的情况下工作的机制,特别允许我们调用一个只知道接口而不知道其准确对象类型的函数。但是如果要创建一个对象,你势必要知道对象的准确类型,因此构造函数不能为virtual。 6、如果把类成员函数都声明为虚函数有什么不好??答案:不行,这是因为虚函数是有代价的:由于每个虚函数的对象都必须维护一个v表,因此在使用虚函数的时候会产生一个系统开销。如果仅是一个很小的类,且不行派生其他类,那么根本没必要使用虚函数。 7、请看下面一段程序:

7、123456#includeusingnamespacestd;  classB{private:7891011121314151617181920212    intdata;public:    B()    {        cout<<"defualtconstructor"<

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。