问题及代码
/*
*ALL rights reserved.
*文件名称: 初学对象4
*作者:李长鸿
*完成时间:2015.3.30
*问题描述:对象数组的运用
*/
#include<iostream>
#include<cmath>
using namespace std;
class Bulk
{
public:
<span style="color:#cc0000;">Bulk(double x,double y=1.0,double z=1.0):a(x),b(y),c(z) {}
Bulk():a(1.0),b(1.0),c(1.0) {}
</span> void get_value()
{
cin>>a>>b>>c;
}
void output()
{
cout<<"体积为:"<<a*b*c<<'\t'<<"表面积为:"<<2*(a*b+a*c+b*c)<<endl;
}
private:
double a,b,c; //三边为私有成员数据
};
int main()
{
Bulk b[5]= {Bulk(2.3,4.5,6.7),Bulk(1.5,3.4),Bulk(10.5)};
b[4].get_value();
<span style="color:#cc0000;">Bulk *p=b;
int i=0;
while(i++<5)
{
p->output();
*p++;
}
</span>return 0;
}
总结:定义式还差点定了求体积及表面积的函数,后来都在 output() 上去实现了。
指针那儿感觉用得不是很好。。。。。。。等以后慢慢学得更多,接触更深了再来改进吧。嘿嘿!
定义带参构函时,开始只定义了一个参数 x ,后面则是 b(1.0),c(1.0),写完了再看发现不行——这样的话 b, c 的实参怎么给形参传值呢??又老老实的改了