问题及代码:
/*copyright(c)2016.烟台大学计算机学院 * All rights reserved, * 文件名称:text.Cpp * 作者:吴敬超 * 完成日期:2016年5月10日 * 版本号:codeblock * * 问题描述: * 输入描述: * 程序输出: 输出结果 */ #include<iostream> using namespace std; class A { public: A(){a=0;} A(int i) { a=i; } void print(){cout<<a<<" ";} private: int a; }; class B:public A { public: B(){b=0;} B(int i,int j,int k):A(i),aa(j){b=k;} //思考:这三处出现的print,有何区别 void print()//(1) { A::print();//(2) aa.print();//(3) cout<<b<<endl; } private: int b; A aa; }; int main() { B test[2]; test[0]=B(1,4,7); test[1]=B(2,5,8); for(int i=0;i<2;i++) { test[i].print(); } return 0; } //第一处出现的print是派生类中的函数;/ //第二处出现的是基类中的函数 //第三处出现的print是数据成员aa调用基类中的函数
运行结果:
时间: 2024-10-16 13:52:49