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

*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;  
}  



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值