第五周任务一之构造函数的参数初始化表

来源:互联网 发布:简述sem和seo的区别 编辑:程序博客网 时间:2024/05/18 15:05

源程序:

/* (程序头部注释开始)* 程序的版权和版本声明部分* Copyright (c) 2011, 烟台大学计算机学院学生 * All rights reserved.* 文件名称:三角形类之参数初始化表的构造函数                            * 作    者:  114-3 张宗佳                            * 完成日期:  2012 年 3  月 19 日* 版 本 号: vc.4         * 对任务及求解方法的描述部分* 输入描述:* 问题描述:在构造函数中使用参数初始化表对数据成员初始化。* 程序输出:输出三角形的三边,周长和面积 * 程序头部的注释结束*/#include<iostream>#include<cmath>using namespace std;class Triangle{public:Triangle(float,float,float);//带参数的构造函数float perimeter(void);//计算三角形的周长float area(void);//计算三角形的面积void showMessage();private:float a,b,c;};int main(){Triangle Tri2(7,8,9);//定义三角形类的一个实例Tri2.showMessage();return 0;}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.参数初始化表对函数体内数据成员的初始化实在函数首部实现的

2.使用参数初始化表的构造函数可以在类内定义,也可以在类外定义,在类外定义一定要用域限定符

3.在使用参数初始化表时,可以直接附初值,但是在定义对象时给出的是残就不管用了


原创粉丝点击