第五周任务一之默认构造函数和带参数的构造函数
2012-03-20 14:05
232 查看
源程序:
/* (程序头部注释开始)
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生
* All rights reserved.
* 文件名称:三角形类之默认构造函数和带参数的构造函数
* 作 者: 114-3 张宗佳
* 完成日期: 2012 年 3 月 19 日
* 版 本 号: vc.4
* 对任务及求解方法的描述部分
* 输入描述:
* 问题描述:(1)使用带参数构造函数,即Triangle(float x, float y, float z),三边长在调用时由实参直接给出;
(2)设计默认构造函数,即不指定参数时,默认各边长为1;
* 程序输出:输出三角形的三边,周长和面积
* 程序头部的注释结束
*/
#include<iostream>
#include<cmath>
using namespace std;
class Triangle
{
public:
Triangle(float,float,float);//带参数的构造函数
Triangle();//默认构造函数
float perimeter(void);//计算三角形的周长
float area(void);//计算三角形的面积
void showMessage();
private:
float a,b,c;
};
int main()
{
Triangle Tri1;//定义三角形类的一个实例(对象)
Tri1.showMessage();
Triangle Tri2(7,8,9);//定义三角形类的一个实例
Tri2.showMessage();
return 0;
}
Triangle::Triangle()
{
a = 1;
b = 1;
c = 1;
}
Triangle::Triangle(float x,float y, float z)
{
a = x;
b = y;
c = z;
}
float Triangle::perimeter(void)
{
return(a + b + c);
}
float Triangle::area(void)
{
float cos, sin, s;
cos = (a * a + c * c - b * b) / (2 * a * c);
sin = sqrt (1 - cos * cos);
s = a * c * sin / 2;
return s;
}
void Triangle::showMessage()
{
cout << "三角形的三边长分别为:" << a << '\t' << b << '\t' << c << endl;
cout << "三角形的周长为:" << perimeter() << "三角形的面积:" << area() << endl;
return ;
}实验结果:
实验积累:
1.构造函数的名字必须与类名同名,而且它不具有任何类型,不返回任何职,在类外定义时,要有域限定符,如Triangle::Triangle()2.带参数的构造函数与默认构造函数不同,默认构造函数不带参数,在定义时直接给出默认值
3.带参数的构造函数中的形参,其对应的实参在定义对象时给定
/* (程序头部注释开始)
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生
* All rights reserved.
* 文件名称:三角形类之默认构造函数和带参数的构造函数
* 作 者: 114-3 张宗佳
* 完成日期: 2012 年 3 月 19 日
* 版 本 号: vc.4
* 对任务及求解方法的描述部分
* 输入描述:
* 问题描述:(1)使用带参数构造函数,即Triangle(float x, float y, float z),三边长在调用时由实参直接给出;
(2)设计默认构造函数,即不指定参数时,默认各边长为1;
* 程序输出:输出三角形的三边,周长和面积
* 程序头部的注释结束
*/
#include<iostream>
#include<cmath>
using namespace std;
class Triangle
{
public:
Triangle(float,float,float);//带参数的构造函数
Triangle();//默认构造函数
float perimeter(void);//计算三角形的周长
float area(void);//计算三角形的面积
void showMessage();
private:
float a,b,c;
};
int main()
{
Triangle Tri1;//定义三角形类的一个实例(对象)
Tri1.showMessage();
Triangle Tri2(7,8,9);//定义三角形类的一个实例
Tri2.showMessage();
return 0;
}
Triangle::Triangle()
{
a = 1;
b = 1;
c = 1;
}
Triangle::Triangle(float x,float y, float z)
{
a = x;
b = y;
c = z;
}
float Triangle::perimeter(void)
{
return(a + b + c);
}
float Triangle::area(void)
{
float cos, sin, s;
cos = (a * a + c * c - b * b) / (2 * a * c);
sin = sqrt (1 - cos * cos);
s = a * c * sin / 2;
return s;
}
void Triangle::showMessage()
{
cout << "三角形的三边长分别为:" << a << '\t' << b << '\t' << c << endl;
cout << "三角形的周长为:" << perimeter() << "三角形的面积:" << area() << endl;
return ;
}实验结果:
实验积累:
1.构造函数的名字必须与类名同名,而且它不具有任何类型,不返回任何职,在类外定义时,要有域限定符,如Triangle::Triangle()2.带参数的构造函数与默认构造函数不同,默认构造函数不带参数,在定义时直接给出默认值
3.带参数的构造函数中的形参,其对应的实参在定义对象时给定
相关文章推荐
- 第五周任务一之构造函数的参数初始化表
- 第五周任务1-带参数构造函数
- 第五周实验报告(任务一)《带参数的构造函数》
- 第五周 项目一:三角形类(默认构造函数和带参数构造函数)
- 第五周实验报告(任务一)《不指定参数时的构造函数》
- 第五周上机任务项目1-(1带参数构造函数)--(纪念原创博文第100篇)
- 第五周任务1:三角形类(带参数构造函数)
- 第五周任务一之默认参数的构造函数
- [置顶] 第五周项目一构造函数————4)参数初始化表
- 第五周项目一1.4 在构造函数中使用参数初始化表对数据成员初始化
- 2013第五周上机任务【项目1 三角形类(构造函数)】
- 第五周项目一使用默认带参数的构造函数定义三角形的类
- 《第五周任务一1》设计三角形类,增加构造函数
- C++第5周任务1-5在构造函数中使用参数初始化表对数据成员初始化。
- 第五周上机任务项目1-(2,3默认参数构造函数)
- 项目一 默认构造函数和带参数的构造函数
- 第五周作业(任务1)使用默认参数的构造函数,不给定实参时,默认边长为1
- 《第五周任务一4》设计三角形,增加构造函数
- 第五周实验报告(一)带参数的构造函数
- 第五周上机任务项目1-(4参数初始化表对数据成员初始化)