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

第13周 《C++语言基础》程序阅读——多态性与抽象类 (3)

时间:2015-05-27 10:04:38      阅读:116      评论:0      收藏:0      [点我收藏+]

标签:

1、阅读下面的程序,并写出运行结果
(3)纯虚函数

#include <iostream>
using namespace std;
class Base
{
public:
    virtual void Who() =0;
};
class FirstDerived:public Base
{
public:
    void Who() { cout<<"F"; }
};
class SecondDerived:public Base
{
public:
    void Who() { cout<<"S"; }
};
int main()
{
    FirstDerived first_obj;
    SecondDerived second_obj;
    Base &bref=first_obj;
    bref.Who();
    bref=second_obj;
    bref.Who();
    Base *bp;
    bp=&first_obj;
    bp->Who();
    bp=&second_obj;
    bp->Who();
    return 0;
}


 

预计运行结果:FSFS

实际运行结果:技术分享

错误分析:Base &bref=first_obj;这句话意思是bref为first_obj的引用,而bref=second_obj;是用second_obj为first_obj赋值然而并没有数据成员所以并没有什么乱用。所以输出FFFS。

第13周 《C++语言基础》程序阅读——多态性与抽象类 (3)

标签:

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

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