码迷,mamicode.com
首页 > 其他好文 > 详细

第10,11周 阅读程序写出运行结果 (1)

时间:2016-05-12 17:39:04      阅读:144      评论:0      收藏:0      [点我收藏+]

标签:


/* 
2.02. *Copyright (c) 2016,烟台大学计算机学院 
3.03. *All rights reserved. 
4. 04. *文件名称:cpp 
5. 05. *作    者:孙亚茹 
6.06. *完成日期:2016年5月10日 
7.07. *版 本 号:v1.0 
8. 09. *问题描述:阅读程序,写出执行结果。
9.*/  
#include <iostream>
using namespace std;
class Data
{
public:
    Data(int i):x(i){cout<<"A";}
    ~Data(){ cout<<"B";}
private:
    int x;
};
class Base
{
public:
    Base(int i):b1(i){cout<<"C";}
    ~Base(){ cout<<"D";}
private:
    int b1;
};
class Derived:public Base
{
public:
    Derived (int i,int j):Base(i),d1(j){
        cout<<"E";
    }
    ~Derived(){cout<<"F";}
private:
    Data d1;
};
int main()
{
    Derived obj(1,2);
    return 0;
}

技术分享

.学习总结:

                 阅读以后以为运行结果为:DEF.错误原因是:(1)把共有成员误当成私有成员,以为派生类不能访问。(2)没有看清派生类的私有数据成员类型为继承类,这导致运行结果中A,B没有出现,(3)错误认为继承类的析构函数也应当在执行派生类成员函数之前执行。

知识点总结:

               (1)继承类的公有成员函数派生类一样能执行。(2)派生类中不管是执行继承过来的成员函数还是本身的成员函数它们的析构函数都要最后执行,并按照相反的顺序执行.(3)读程序一定要看清各个成员类型,要认真。                                                                                         


第10,11周 阅读程序写出运行结果 (1)

标签:

原文地址:http://blog.csdn.net/syr201558504128/article/details/51363144

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