第五周项目一----通过增加构造函数使对象在定义时初始化(4种方法统编)
2013-03-29 10:58
387 查看
/* * 程序的版权和版本声明部分 * Copyright (c)2013, 烟台大学计算机学院学生 * All rightsreserved. * 文件名称: 三角形类.cpp * 作者: 赵晓晨 * 完成日期: 2013 年3 月29日 * 版本号: v1.0 * 输入描述:无 * 问题描述:声明默认构造函数,求三角形周长和面积的类。 * 程序输出:三角形的周长和面积 */ //1.使用带参构造函数,即Triangle(double x,double y,double z),三边长在调用时由实参直接给出; #include<iostream> #include<Cmath> using namespace std; class Triangle { public: Triangle(double x,double y,double z); //声明带参数的构造函数 double perimeter(void); //计算三角形周长 double area(void); //计算并返回三角形的面积 void showMessage(); private: double a,b,c; //三边为私有成员数据 }; Triangle::Triangle(double x,double y,double z)//三边在调用时由实参直接给出 { a=x; b=y; c=z; } double Triangle::perimeter() { return (a+b+c); } double Triangle::area() { int q=(a+b+c)/2; return sqrt(q*(q-a)*(q-b)*(q-c)); } void Triangle::showMessage() { cout<<"三角形的三条边长分别是:"<<a<<'\t'<<b<<'\t'<<c<<endl; cout<<"该三角形的周长是:"<<perimeter()<<'\t'<<"面积是:"<<area()<<endl<<endl; } int main(void) { Triangle Tri1; //定义三角心类的一个实例,要求执行一个默认构造函数,三边初值均为1 Tri1.showMessage(); Triangle Tri2(7,8,9); //定义三角形类的实例 Tri2.showMessage(); return 0; } //2.设计默认构造函数,既不指定参数时,默认各边长为1; #include<iostream> #include<Cmath> using namespace std; class Triangle { public: Triangle()//定义构造成员函数,函数名与类名成员相同 { a=1; //定义构造函数对对象中的数据成员赋值 b=1; c=1; } Triangle(double x,double y,double z): a(x),b(y),c(z){} //声明默认构造函数 double perimeter(void); double area(void); void showMessage(); private: double a,b,c; }; double Triangle::perimeter() { return (a+b+c); } double Triangle::area() { double q=(a+b+c)/2; return sqrt(q*(q-a)*(q-b)*(q-c)); } void Triangle::showMessage() { cout<<"三角形的三条边长分别是:"<<a<<'\t'<<b<<'\t'<<c<<endl; cout<<"该三角形的周长是:"<<perimeter()<<'\t'<<"面积是:"<<area()<<endl<<endl; } int main(void) { Triangle Tri1; //定义三角心类的一个实例,要求执行一个默认构造函数,三边初值均为1 Tri1.showMessage(); Triangle Tri2(7,8,9); //定义三角形类的实例 Tri2.showMessage(); return 0; } //3.使用有默认参数的构造函数,不给定实参时,默认边长为1; #include<iostream> #include<Cmath> using namespace std; class Triangle { public: Triangle(double x=1,double y=1,double z=1); double perimeter(void); double area(void); void showMessage(); private: double a,b,c; }; Triangle::Triangle(double x,double y,double z)//三边在调用时由实参直接给出{ a=x;b=y;c=z;} double Triangle::perimeter() { return (a+b+c); } double Triangle::area() { double q=(a+b+c)/2; return sqrt(q*(q-a)*(q-b)*(q-c)); } void Triangle::showMessage() { cout<<"三角形的三条边长分别是:"<<a<<'\t'<<b<<'\t'<<c<<endl; cout<<"该三角形的周长是:"<<perimeter()<<'\t'<<"面积是:"<<area()<<endl<<endl; } int main(void) { Triangle Tri1; //定义三角心类的一个实例,要求执行一个默认构造函数,三边初值均为1 Tri1.showMessage(); Triangle Tri2(7,8,9); //定义三角形类的实例 Tri2.showMessage(); return 0; } //4.在构造参数中使用参数初始化表对数据成员初始化 #include<iostream> #include<Cmath> using namespace std; class Triangle { public: Triangle(double x,double y,double z): a(x),b(y),c(z){} //参数初始化表 double perimeter(void); //计算三角形周长 double area(void); //计算并返回三角形的面积 void showMessage(); private: double a,b,c; //三边为私有成员数据 }; double Triangle::perimeter() { return (a+b+c); } double Triangle::area() { int q=(a+b+c)/2; return sqrt(q*(q-a)*(q-b)*(q-c)); } void Triangle::showMessage() { cout<<"三角形的三条边长分别是:"<<a<<'\t'<<b<<'\t'<<c<<endl; cout<<"该三角形的周长是:"<<perimeter()<<'\t'<<"面积是:"<<area()<<endl<<endl; } int main(void) { Triangle Tri1; //定义三角心类的一个实例,要求执行一个默认构造函数,三边初值均为1 Tri1.showMessage(); Triangle Tri2(7,8,9); //定义三角形类的实例 Tri2.showMessage(); return 0; }
结果:
体会:
晕了。。。。。。。。求质量吧,真心想把这门课程学好,加油吧菜鸟晨晨。
相关文章推荐
- 第五周任务1:设计三角形类,通过增加构造函数,使对象在定义时能够进行初始化
- 《第五周实验报告1-2》---增加构造函数,使对象在定义时能够进行初始化
- 设计三角形类,通过增加构造函数,是对象在定义是能够进行初始化
- 《第五周实验报告1-3》---增加构造函数,使对象在定义时能够进行初始化
- 设计三角形类,通过增加构造函数,使对象在定义时能够进行初始化2
- 【任务1】设计三角形类,通过增加构造函数,使对象在定义时能够进行初始化
- 五周任务一:设计三角形类,通过增加构造函数,使对象在定义时能够进行初始化
- 设计三角形类,通过增加构造函数,使对象在定义时能够进行初始化
- 《第五周实验报告1-1》---增加构造函数,使对象在定义时能够进行初始化
- 定义一个交通工具(Vehicle)的类,在测试类Vehicle中的main()中实例化一个交通工具对象,通过方法给它初始化speed,size的值,并打印出来。另外,调用加速,减速的方法对速度进行改变
- 定义一个交通工具(Vehicle)的类,在测试类Vehicle中的main()中实例化一个交通工具对象,通过方法给它初始化speed,size的值,并打印出来。另外,调用加速,减速的方法对速度进行改变
- 定义一个交通工具(Vehicle)的类,在测试类Vehicle中的main()中实例化一个交通工具对象,通过方法给它初始化speed,size的值,并打印出来。另外,调用加速,减速的方法对速度进行改变
- 设计三角形类通过增加构造函数,使定义初始化(1)
- 定义一个交通工具(Vehicle)的类,在测试类Vehicle中的main()中实例化一个交通工具对象,通过方法给它初始化speed,size的值,并打印出来。另外,调用加速,减速的方法对速度进行改变
- 定义一个交通工具(Vehicle)的类,在测试类Vehicle中的main()中实例化一个交通工具对象,通过方法给它初始化speed,size的值,并打印出来。另外,调用加速,减速的方法对速度进行改变
- 定义一个交通工具(Vehicle)的类,在测试类Vehicle中的main()中实例化一个交通工具对象,通过方法给它初始化speed,size的值,并打印出来。另外,调用加速,减速的方法对速度进行改变
- 定义一个交通工具(Vehicle)的类,在测试类Vehicle中的main()中实例化一个交通工具对象,通过方法给它初始化speed,size的值,并打印出来。另外,调用加速,减速的方法对速度进行改变
- 定义一个交通工具(Vehicle)的类,在测试类Vehicle中的main()中实例化一个交通工具对象,通过方法给它初始化speed,size的值,并打印出来。另外,调用加速,减速的方法对速度进行改变
- 定义一个交通工具(Vehicle)的类,在测试类Vehicle中的main()中实例化一个交通工具对象,通过方法给它初始化speed,size的值,并打印出来。另外,调用加速,减速的方法对速度进行改变
- 定义一个交通工具(Vehicle)的类,在测试类Vehicle中的main()中实例化一个交通工具对象,通过方法给它初始化speed,size的值,并打印出来。另外,调用加速,减速的方法对速度进行改变