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

继承抽象类

时间:2017-04-20 11:38:43      阅读:161      评论:0      收藏:0      [点我收藏+]

标签:继承   抽象类   

#ifndef VIRTUAL1

#define VIRTUAL1

#include<iostream>

using namespace std;

class Number{

public:

Number(int i){ x = i; }

virtual void show() = 0;

protected:

int x;

};

class dec_type :public Number{//这里必须公有继承,否则派生类对象做实参无法传递给基类的

//引用对象。

public:

dec_type(int i) :Number(i){}

void show(){

cout << dec << x<<endl;

}

};

class hex_type:public Number{

public:

hex_type(int i) :Number(i){}

void show(){

cout << hex << x<<endl;

}

};

class oct_type :public Number{

public:

oct_type(int i) :Number(i){}

void show(){

cout << oct << x<<endl;

}

};

#endif


#include"vitual1.h"

void fun(Number &n){//抽象类可以做引用

n.show();

}

int main(){

oct_type oc(50);

fun(oc);//派生类对象做参数传给基类的引用

system("pause");

return 0;

}


继承抽象类

标签:继承   抽象类   

原文地址:http://ji123.blog.51cto.com/11333309/1917458

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