使用c++怎么创建一个形状类形状

  介绍

使用c++怎么创建一个形状类形状?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

具体要求如下:

<强>(1)形状类形状

(a)保护数据成员
双x, y:对于不同的形状,x和y表示不同的含义,如对于圆,x和y均表示圆的半径,而对于矩形,x表示矩形的长,y表示矩形的宽。访问权限定义为保护类型是为了能被继承下去,以便派生类能直接访问x和y。
(b)公有成员函数
构造函数的形状(双值,双_y吗):用值,_y吗分别初始化x, y。
双GetArea():求面积,在此返回0.0。

<强>(2)圆类圆,从形状公有派生

(a)公有成员函数
圆(双r):构造函数,并用r构造基类的x和y。
双GetArea():求圆的面积。
双GetRadius():获取圆的半径。

<强>(3)矩形类矩形,从形状公有派生

(a)公有成员函数
矩形(双l,双w):构造函数,并用l和w构造基类的x和y。
双GetArea():求矩形的面积。
双GetLength():获取矩形的长。
双GetWidth():获取矩形的宽。

<>强(4)在主函数中对派生类进行测试。注意,在程序的开头定义符号常量π的值为0。3.14。

测试的输出结果如下:
循环:r=1,长方形面积=3.14
:长度=3,宽度=4,面积=12

# include “stdafx.h"   # include   using  namespace 性传播疾病;   # define  PI  3.14   class 形状   {   公众:   形状(){}   形状(double  _x double  _y吗):x(值),y (_y吗){}   double  GetArea ();   保护:   double  x, y;   ,   };   double 形状::GetArea ()   {   return  0.0;   }   class 循环:public 形状   {   公众:   圆(){}   圆(double  r) {}, x=r//构造函数,并用r构造基类的x和y。   double 才能GetArea();//求圆的面积。   double 才能GetRadius();//获取圆的半径。   };   ,   double 循环::GetArea ()   {   return π* x * x;   }   double 循环::GetRadius ()   {   return  x;   }   ,   class 矩形:public 形状   {   公众:   矩形(){}   矩形(double  l, double  w) {x =, l, y=w;}//构造函数,并用l和w构造基类的x和y。   double 才能GetArea();//求矩形的面积。   double 才能GetLength();//获取矩形的长。   double 才能GetWidth();//获取矩形的宽   ,   };   ,double 矩形::GetArea ()   ,{   ,return  x * y;   ,}   ,double 矩形::GetLength ()   ,{   ,return  y;   ,}   ,double 矩形::GetWidth ()   ,{   ,return  x;   ,}   命令行参数个数,int 主要(int  _TCHAR *, argv [])   {      Circle 圆(1);      cout<& lt;“,半径=? lt; & lt; circle.GetRadius () & lt; & lt;“,面积=? lt; & lt; circle.GetArea () & lt; & lt; endl;   Rectangle 矩形(3、4);   ,   cout<& lt;“,长度=? lt; & lt; rectangle.GetLength () & lt; & lt;“,宽度=? lt; & lt; rectangle.GetWidth () & lt; & lt;“,面积=? lt; & lt; rectangle.GetArea () & lt; & lt; endl;   return  0;   }

关于使用c++怎么创建一个形状类形状问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注行业资讯频道了解更多相关知识。

使用c++怎么创建一个形状类形状