【项目1-三角形类的构造函数】
设计三角形类,通过增加构造函数,使对象在定义时能够进行初始化,可以由下面的类声明开始,需要自己实现相关的成员函数,以及增加要求的构造函数。
- #include<iostream>
- #include<Cmath>
- using namespace std;
- class Triangle
- {
- public:
- void setABC(double x, double y, double z);//置三边的值,注意要能成三角形
- void getABC(double *x, double *y, double *z);//取三边的值
- double perimeter(void);//计算三角形的周长
- double area(void);//计算并返回三角形的面积
- private:
- double a,b,c; //三边为私有成员数据
- };
- int main()
- {
- Triangle tri1; //定义三角形类的一个实例(对象)
- tri1.setABC(4,5,6); //为三边置初值
- double x,y,z;
- tri1.getABC (&x,&y,&z); //将三边的值为x,y,z赋值
- cout<<"三条边为:"<<x<<'\t'<<y<<'\t'<<z<<endl;
- cout<<"三角形的周长为:"<< tri1.perimeter()<<'\t'<<"面积为:"<< tri1.area()<<endl;
- return 0;
- }
- //请在下面定义Triangle类中的各个成员函数
- void Triangle::setABC(double x, double y, double z)
- {
- a = x;
- b = y;
- c = z;
- }
- void Triangle::getABC(double *x, double *y, double *z)
- {
- //x = &a;
- //y = &b;
- //z = &c;
- *x = a;
- *y = b;
- *z = c;
- }
- double Triangle::perimeter()
- {
- return (a + b + c);
- }
- double Triangle::area()
- {
- double p = (a + b + c) / 2;
- double s = sqrt(p * (p - a) * (p - b) * (p - c));
- return s;
- }