/*
*Copyright (c)2014,煙臺大學計算機與控制工程學院
*All rights reserved.
*文件名稱:test.cpp
*作 者:徐洪祥
*完成日期:2015年4月1日
*版 本 號:v1.0
*
*問題描述:設計三角形類,通過增加構造函數,使對象在定義時能夠初始化。
*程序輸入:
*程序輸出:三角形三邊,周長,面積
*/
#include <iostream>
#include <cmath>
using namespace std;
class Triangle
{
public:
Triangle(double=1,double=1,double=1);
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) {}
void Triangle::showMessage()
{
cout<<"三角形的三邊長爲:"<<a<<' '<<b<<' '<<c<<endl;
cout<<"該三角形的周長爲"<<perimeter()<<",面積爲:"<<area()<<endl<<endl;
}
double Triangle::perimeter()
{
return(a+b+c);
}
double Triangle::area()
{
double p=(a+b+c)/2;
return sqrt(p*(p - a)*(p-b)*(p-c));
}
int main()
{
Triangle Tri(7,8,9);
Tri.showMessage();
return 0;
}
<img src="https://img-blog.csdn.net/20150401090449347?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveHVob25neGlhbmd5aXNodWk=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
總結:對構造函數的理解和運用還不夠深刻、熟練,有些地方考慮不到,剛開始忘了設置默認參數 ,竟然連初始化也忘了。。。又回到上週的三角形編碼了