第十、十一周项目1:阅读程序,并写出运行结果(2)
2016-05-30 19:06
309 查看
问题及代码:
运行结果:
这个程序在编译时出现错误。
知识点总结:
原因:B是A的子类,所以A的对象不可以赋值于B的对象。
学习心得:
要彻底的理解继承的关系,子类和父类是继承关系,他们各自的对象不可以赋值。
/*Copyright (c)2016,烟台大学计算机与控制工程学院 *All rights reserved. *文件名称:main.cpp *作 者:崔青青 *完成日期:2016年5月30日 *版 本 号:v1.0 *问题描述:阅读下面程序,并写出运行结果。 *输入描述:无 *输出描述:无 */ #include<iostream> using namespace std; class A { protected: int a,b; public: A(int aa,int bb):a(aa),b(bb){} void printA(){cout<<"a: "<<a<<"\tb: "<<b<<endl;} }; class B:public A { int c; public: B(int aa,int bb,int cc):A(aa,bb),c(cc){} void printB() { cout<<"a: "<<a<<"\tb: "<<b<<"\tc: "<<c<<endl; } }; int main() { A a(1,1); B b(2,3,4); //此处加入各个代码 b=a; a.printA(); b.printA(); b.printB(); return 0; }
运行结果:
这个程序在编译时出现错误。
知识点总结:
原因:B是A的子类,所以A的对象不可以赋值于B的对象。
学习心得:
要彻底的理解继承的关系,子类和父类是继承关系,他们各自的对象不可以赋值。
相关文章推荐
- hIBERNATE多对多关联
- NYOJ-127-星际之门(一)(N阶完全图所有生成树数量num=N*(N-2))
- 常用linux命令
- Android中Java与JavaScript之间交互(转)
- IPv4和IPv6
- hduoj A strange lift---1548
- Kaggle的Digits Recognizer题目实现
- 237. Delete Node in a Linked List
- hive 使用
- ORA-12986: columns in partially dropped state. Submit ALTER TABLE DROP COLUMNS CONTINUE
- iOS 多线程篇7—GCD的基本使用
- TCP协议中的SO_LINGER选项
- 双进程守护保证Service后台任务一直运行不被杀死
- 帝国时代3无法全屏、陷入窗口模式解决
- 使用随机森林和mRMR进行特征选择
- 初谈SQL Server逻辑读、物理读、预读
- 远程登录Linux图形化界面
- JavaScript+Java实现HTML页面转为PDF文件保存的方法
- springMVC使用@ControllerAdvice实现异常处理
- apache commons-io