ex_virtualfunc.cpp
来自「Visual C++应用教程-源代码 本书在复习C++基础知识后」· C++ 代码 · 共 46 行
CPP
46 行
// [例Ex_VirtualFunc] 虚函数的动态联编
#include <iostream.h>
class CShape{
public:
virtual float area()
{ return 0.0; }
};
class CTriangle:public CShape
{
public:
CTriangle(float h = 0, float w = 0)
{ H = h; W = w; }
float area()
{ return (float)(H * W * 0.5); }
private:
float H, W;
};
class CCircle:public CShape
{
public:
CCircle(float r = 0)
{ R = r; }
virtual float area( )
{ return (float)(3.14159265 * R * R); }
private:
float R;
};
int main()
{
CTriangle tri( 3, 4 );
cout<<"tri.area() = "<<tri.area()<<endl;
CCircle cir(5);
cout<<"cir.area() = "<<cir.area()<<endl;
CShape *s1 = &tri;
cout<<"s1->area() = "<<s1->area()<<endl;
CShape &s2 = cir;
cout<<"s2.area() = "<<s2.area()<<endl;
return 0;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?