//
// main.cpp
// C++ 纯虚函数和抽象类在多继承中的应用
//
// Created by 扆佳梁 on 16/8/2.
// Copyright © 2016年 Eric. All rights reserved.
//
#include <iostream>
using namespace std;
class Figure{
public:
//子类 统一调用的接口,让子类使用,让子类必须去实现继承
virtual void getArea() = 0;
};
class Circle:public Figure{
public:
Circle(int a,int b){
this->a = a;
this->b = b;
}
void getArea(){
cout<<"圆形的面积是:"<<3.14*a*a<<endl;
}
private:
int a;
int b;
};
class Tri:public Figure{
private:
int a;
int b;
public:
Tri(int a,int b){
this->a = a;
this->b = b;
}
void getArea(){
cout<<"三角形面积:"<<a*b/2<<endl;
}
};
class Square:public Figure{
private:
int a;
int b;
public:
Square(int a,int b){
this->a = a;
this->b = b;
}
void getArea(){
cout<<"四边形的面积"<<a*b<<endl;
}
};
void objPlay(Figure *base){
base->getArea();
}
int main(int argc, const char * argv[]) {
// insert code here...
std::cout << "Hello, World!\n";
//Figure *base = NULL;//抽象类不能被实例化
Circle c1(10,20);
Tri t1(20,30);
Square s1(50,60);
objPlay(&c1);
objPlay(&t1);
objPlay(&s1);
return 0;
}
C++抽象类的基本的小实例
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 干货要点: 1、叙述、描写和说明是三种记“实”的能力。 2、议论和抒情是两种写“虚”的能力。 3、根据表达的中心,...