抽象类基本语法
来源:互联网 发布:手机信息源码 编辑:程序博客网 时间:2024/05/21 11:02
传智扫地僧课程学习笔记。
在多态的基础上,
将父类函数,用virtual修饰,并=0,形成纯虚函数,
进而这个类也变为抽象类,
为继承它类,提供统一接口,
继承它的类,需要实现这个类,否则仍是抽象类,
下面是老师课上的代码,
#include <iostream>using namespace std;////面向抽象类编程(面向一套预先定义好的接口编程)//解耦合 ....模块的划分class Figure //抽象类{public://阅读一个统一的界面(接口),让子类使用,让子类必须去实现virtual void getArea() = 0 ; //纯虚函数protected:private:};class Circle : public Figure{public:Circle(int a, int b){this->a = a;this->b = b;}virtual void getArea(){cout<<"圆形的面积: "<<3.14*a*a<<endl;;}private:int a;int b;};class Tri : public Figure{public:Tri(int a, int b){this->a = a;this->b = b;}virtual void getArea() {cout<<"三角形的面积: "<<a*b/2<<endl;;}private:int a;int b;};class Square : public Figure{public:Square(int a, int b){this->a = a;this->b = b;}virtual void getArea() {cout<<"四边形的面积: "<<a*b<<endl;;}private:int a;int b;};void objplay(Figure *base){base->getArea(); //会发生多态}void main511(){//Figure f; //抽象类不能被实例化Figure *base = NULL; //抽象类不能被实例化Circle c1(10, 20);Tri t1(20, 30);Square s1(50, 60);//面向抽象类编程(面向一套预先定义好的接口编程)objplay(&c1);objplay(&t1);objplay(&s1);//c1.getArea();cout<<"hello..."<<endl;system("pause");return ;}
0 0
- 抽象类基本语法
- 抽象类基本语法
- [java语法]基本语法(7) 面向对象--抽象类与接口
- scala基础语法-抽象类
- JSP_JAVA基本语法-类
- 类图基本语法
- 抽象类和接口的语法区别
- 抽象类、接口的简单语法
- python类基本语法笔记
- 单个类模板基本语法
- 抽象类 接口 抽象方法 虚方法【基本说明】
- 基本语法
- 基本语法
- 基本语法
- 基本语法
- 基本语法
- 基本语法
- 基本语法
- HDU 1016 Prime Ring Problem (dfs)
- Meteor学习路程(三)之数据库的例子(1)【查询】
- 视频电商网站实战 - 开始编写会员中心脚手架代码
- Influxdb-官方文档摘录
- Android之改变状态栏的颜色使其与APP风格一体化
- 抽象类基本语法
- GRPC 配置、使用、安装文档 java-windows
- 马科夫决策过程(Markov Decision Process,MDP)
- 电话拦截的权限及编写问题
- 在某个时间范围内选出所有符合条件的日期(星期几,月份中的几号)
- 魅族手机测试时报Installation failed with message INSTALL_FAILED_USER_RESTRICTED错误的解决方法
- maven 项目 添加src/main/java出The folder is already a source folde问题
- Nginx安装与配置
- Unity3D Static Batching