ex_purevirtualfunc.cpp

来自「郑阿齐VC教材」· C++ 代码 · 共 47 行

CPP
47
字号
#include <iostream.h>
class CShape
{
public:
	virtual float area() = 0;				// 将area定义成纯虚函数
};
class CTriangle:public CShape
{
public:
	CTriangle(float h, float w)	
	{ 	
		H = h;	W = w;	
	}
	float area()						// 在派生类定义纯虚函数的具体实现代码
	{	
		return (float)(H * W * 0.5);		
	}
private:
	float H, W;
};
class CCircle:public CShape
{
public:
	CCircle(float r)	
	{	
		R = r;	
	}
	float area()  					// 在派生类定义纯虚函数的具体实现代码
	{	
		return (float)(3.14159265 * R * R);		
	}
private:
	float R;
};
void main()
{
	CShape *pShape;
	CTriangle tri(3, 4);
	cout<<tri.area()<<endl;
	pShape = &tri;
	cout<<pShape->area()<<endl;
	CCircle cir(5);
	cout<<cir.area()<<endl;
	pShape = &cir;
	cout<<pShape->area()<<endl;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?