继承与派生
来源:互联网 发布:如何做好网络推广工作 编辑:程序博客网 时间:2024/05/19 05:32
实验内容:
建立一个基类,两个派生类,让每一个派生类都包含一个函数area(),分别用来返回矩形和三角形的面积。用构造函数对height和width进行初始化。要求通过基类指针访问虚函数的方法。
纯虚函数:virtual double area()=0
纯虚函数的作用是在基类中为派生类保留一个函数的名字,以便派生类对它进行重新定义,纯虚函数没有函数体。
#include <iostream>using namespace std;class area_cl{protected:double height;double width;public:area_cl(double r,double s){ height=r; width=s;}virtual double area()=0;//纯虚函数};class rectangle:public area_cl{public:rectangle(double r,double s):area_cl(r,s){ }double area(){ return height*width;}};class isosceles:public area_cl{public:isosceles(double r,double s):area_cl(r,s){ }double area(){ return height*width/2;}};int main(){ area_cl *a; rectangle s(10.0,5.0);isosceles i(4.0,6.0);a=&s;cout<<"the area of rectangle is: "<<a->area()<<endl;//s.area()a=&i;cout<<"the area of isosceles is: "<<a->area()<<endl;//i.area()return 0;}
运行结果:
0 0
- 派生类与继承
- C++继承与派生
- C++ [ 继承与派生 ]
- 继承与派生
- 继承与派生
- 继承与派生
- 继承与派生
- C++ 继承与派生
- c++继承与派生
- 继承与派生
- 派生与继承
- c++继承与派生
- 20、继承与派生
- c++继承与派生
- C++继承与派生
- 继承与派生-撞错
- 继承与派生
- C++继承与派生
- Linux 单网卡多 IP 的配置方法
- 工作随想01
- C++中explicit关键字的作用
- poj 2440 DNA(状态压缩递推+矩阵)
- Bellman-Ford算法
- 继承与派生
- table获取当前行号
- 改善java程序的151个建议 读后感二
- c++ 遍历文件夹所有文件
- java多线程编程
- 对象数组
- 代码格式、测试化工具
- MacVim 配置
- VMware WorkStation的三种网络模式二