第五周项目1-三角形类雏形(5)

来源:互联网 发布:mac电脑怎么杀毒 编辑:程序博客网 时间:2024/05/29 16:10

*All rightreserved. 

 *文件名称:test.cpp 

 *作   者:张明宇

 *完成日期:2016年3月27日 

 */

问题及代码:

使用复制构造函数,能用一个已有的三角形对象,复制出新的三角形对象:

int main(){Triangle Tri1(3,4,5);  //定义边长为1 1 1的三角形类实例Tri1.showMessage();Triangle Tri2(Tri1);//调用复制构造函数Tri2.showMessage();return 0;}
#include<iostream>   #include<Cmath>   using namespace std;  class Triangle  {  public:      Triangle(double x=1, double y=1, double z=1);      Triangle(const Triangle &t);      double perimeter();//计算三角形的周长       double area();//计算并返回三角形的面积       void showMessage();  private:      double a,b,c; //三边为私有成员数据   };  Triangle::Triangle(double x, double y, double z)  {      a=x;      b=y;      c=z;  }    Triangle::Triangle(const Triangle &t)  {      a=t.a;      b=t.b;      c=t.c;  }  double Triangle::perimeter()  {      return (a + b + c);  }    double Triangle::area()  {      double s = (a + b + c) / 2;      return sqrt(s * (s - a) * (s - b) * (s - c));  }    void Triangle::showMessage()  {      cout<<"三角形的三边长分别为:"<<a<<' '<<b<<' '<<c<<endl;      cout<<"该三角形的周长为"<<perimeter()<<",面积为"<<area()<<endl<<endl;  }  int main()  {      Triangle Tri1(3,4,5);   //定义边长为1 1 1的三角形类实例       Tri1.showMessage();      Triangle Tri2(Tri1); //调用复制构造函数       Tri2.showMessage();      return 0;  }  



0 0