📄 c17_06.cpp
字号:
// 纯虚函数的使用
#include <iostream >
using namespace std;
const double PI = 3.14159;
class CShape //定义一个抽象类
{
public:
virtual float area() = 0; //声明为纯虚函数
virtual void print() = 0; //声明为纯虚函数
};
class CCircle: public CShape
{
public:
CCircle( float r ): m_rad(r) {}
float area() { return PI * m_rad * m_rad; }
void print()
{
cout << " 圆的面积是:" <<area() << endl;
}
private:
float m_rad; //圆的半径
};
class CRectangle: public CShape
{
public:
CRectangle( float w, float h ): m_wid(w), m_hig(h) {}
float area() { return m_wid * m_hig; }
void print()
{
cout << " 矩形的面积是:"<< area() << endl;
}
private:
float m_wid, m_hig; //矩形的长和宽
};
int main()
{
CShape *layoutptr[2]; //定义一个基类类型的指针数组
layoutptr[0] = new CCircle(3); //可以让基类类型的指针指向派生类对象
layoutptr[1] = new CRectangle(2,4); //可以让基类类型的指针指向派生类对象
for(int i=0;i<2;i++)
{
layoutptr[i]->print();
delete layoutptr[i]; // 释放占用的资源
}
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -