编程小练习

来源:互联网 发布:北京交通大学知行pt 编辑:程序博客网 时间:2024/05/29 05:12

  1. /* 
  2. *Copyright(c) 2016.烟台大学计算机与控制工程学院 
  3. *ALL rights  reserved. 
  4. *文件名称:test.cpp 
  5. *作者:李落才
  6. *完成日期:2016年5月10日 
  7. *问题描述:阅读程序,写出执行结果 
  8. */  
  9.   
  10. #include <iostream>  
  11. using namespace std;  
  12. class A  
  13. {  
  14. public:  
  15.     A(){a=0;}  
  16.     A (int i){a=i;}  
  17.     void print(){cout<<a<<"  ";}  
  18. private:  
  19.     int a;  
  20. };  
  21. class B: public A  
  22. {  
  23. public:  
  24.     B(){b=0;}  
  25.     B(int i, int j, int k): A(i),aa(j){b=k;}  
  26.     //思考:这3处出现的print,有何区别  
  27.     void print()      //(1)B类的成员函数  
  28.     {    
  29.         A::print();   //(2)A类的成员函数,由于和B类的重名,加上(作用域分辨符)A::来区分    
  30.         aa.print();   //(3)aa为A类的数据成员,也是调用A的构造函数    
  31.         cout<<b<<endl;  
  32.     }  
  33. private:  
  34.     int b;  
  35.     A aa;  
  36. };  
  37. int main()  
  38. {  
  39.     B test[2];  
  40.     test[0]=B(1,4,7);  
  41.     test[1]=B(2,5,8);  
  42.     for(int i=0; i<2; i++)  
  43.         test[i].print();  
  44.     return 0;  
  45. }  
0 0
原创粉丝点击