码迷,mamicode.com
首页 > 编程语言 > 详细

第12周 《C++语言基础》程序阅读——多重继承(5)

时间:2015-05-20 09:43:54      阅读:155      评论:0      收藏:0      [点我收藏+]

标签:

问题描述:

(5)阅读下面类的定义,请说出在测试函数中不同情况的调用产生的结果  
(a)
你认为输出结果是:
a: 2    b:3
a: 2    b:3
a: 2    b:3    c:4
运行程序的结果是:技术分享
 
(b)
程序会发生编译错误,原因是:b继承于a,b的数据成员包含但不等于a的数据成员。
记录下IDE中提示的错误并理解:技术分享

(c)  
将会发生错误的一行删除;
对余下的程序,你认为输出是:
a: 1    b:1
a: 2    b:3
实际运行的输出是:
技术分享
那一行的错误原因是:A &r2=b; r2是A的对象无法使用B的成员函数。

(d)
将会发生错误的一行删除;
对余下的程序,你认为输出是:
a: 1    b:1
a: 2    b:3
实际运行的输出是:
技术分享
那一行的错误原因是:p是一个指向A对象的指针,因为B继承A所以可以执行p=&b;p->printA();但是A中没有printB();所以p->printB();错误无法执行。
(e)
在class A中增加成员函数:
在main函数前增加一般函数:
main函数中指定部分为:
你认为输出结果是:
aaaaah, my a: 1
aaaaah, my a: 2
运行程序的结果是:
技术分享

第12周 《C++语言基础》程序阅读——多重继承(5)

标签:

原文地址:http://blog.csdn.net/zp___waj/article/details/45866173

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!