长方体类中的构造函数

源程序:

/* (程序头部注释开始)
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生 
* All rights reserved.
* 文件名称: 构造函数编写长方体类                          
* 作    者: 114-3 张宗佳                            
* 完成日期: 2012 年 3  月 21 日
* 版 本 号: vc.3        

* 对任务及求解方法的描述部分
* 输入描述:前4个长方柱(即数组的前4个元素)要在定义数组时初始化,其中前3个直接给出参数初始化,
  第4个用默认构造函数初始化;第5个长方柱定义时不初始化,而是由键盘输入长、宽、高赋值;
* 问题描述:需要定义长方柱类,5个长方柱采用一个对象数组表示;
* 程序输出:输出这5个长方柱的体积和表面积;
* 程序头部的注释结束
*/
#include<iostream>

using namespace std;

class Box
{
public:
	
	Box():length(1.0),width(1.0),heigth(1.0){};//默认的构造函数
	Box(double len, double wid, double hei):length(len),width(wid),heigth(hei){};//带参数的构造函数
	
	void set_box();
	double valume();
	double area();
	
private:
	double length;
	double width;
	double heigth;
};
int main()
{
	Box b[5] = 
	{
		Box(3.5,4.5,5.5),
			Box(4.5,3.6,8.9),
			Box(8.9,7.8,5.5)
	};//将前三个长方体初始化
	b[4].set_box();
	for(int i = 1; i < 6; ++i)
	{
		cout << "第" << i << "个长方体的体积是:" << b[i - 1].valume() << endl;
		
		cout << "第" << i << "个长方体的表面积是:" << b[i - 1].area() << endl;
	}//不用设置第四个长方体,在输出的时候就以默认1.0 输出了
	return 0;
}
void Box::set_box()
{
	cout << "请输入长方体的长、宽、高:" ;
	
	cin >> length;
	
	cin >> width;
	
	cin >> heigth;
	
	return ;
}
double Box::valume()
{
	double t;
	
	t = length * width * heigth;
	
	return t;
}
double Box::area()
{
	double s;
	
	s = 2 * (length * width + length * heigth + width * heigth);
	
	return s;
}

实验结果:


经验积累:

1.定义对象数组后,在初始化时所给的参数不能多于数组内的元素个数

2.可以讲成员函数设置成double型,给一个返回值,返回体积和表面积,在输出时直接调用就可以了

上机感言:

在声明类的时候,要把数据成员设为私有的,把成员函数设为公有的,而在刚开始编写时,竟然弄反了,在编译时出错....糊涂了...


  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值