- 声明长方体类Box,有长、宽、高三个数据成员,类中有获取及修改长、宽、高的函数,还有计算其周长和面积的函数,要求在类中声明加上无参构造函数(长宽高分别为1,2,3),和带有三个参数的构造函数,然后在main函数中实例化两个对象,要求其中一个对象要动态申请(长宽高分别为3、4、5),另一个采用无参构造函数给的值,并完成长、宽、高,面积及体积的输出。
#include<iostream>
using namespace std;
class Box{//类的清单,如果程序复杂一般把它单独放在一个.h的文件中
private ://数据成员为私有的,要写出它的数据类型和名字
int chang,kuan,gao;
public://成员函数为公有的,给出函数的原型即写出函数类型,函数名称,参数类型
Box();
Box(int c,int k,int g);//有三个参数的构造函数
void setchang (int cc);
void setkuan (int kk);
void setgao(int gg);//设置长宽高三个成员函数
int mianji();
void show();//没有设置get,用show代替,shouw即输出output
int tiji();
};//完成类定义,其核心为定义类当中的成员 ·
Box::Box(){//保持前后一致,不会多实现一个函数也不会少实现一个函数
chang=1;
kuan=2;
gao=3;
cout<<"无参构造函数被调用!"<<endl;
}
Box::Box(int c,int k,int g)
{
chang=c;
kuan=k;
gao=g;
cout<<"带参数的构造函数被调用!"<<endl;
}
void Box::setchang(int cc)
{
chang=cc;
}
void Box::setkuan(int kk)
{
kuan=kk;
}
void Box::setgao(int gg)
{
gao=gg;
}
void Box::show()
{
cout<<chang<<" "<<kuan<<" "<<gao<<endl;
}
int Box::mianji(){
return 2*(chang*kuan+chang*gao+kuan*gao);
}
int Box::tiji()
{
return chang*kuan*gao;
}
int main()
{
Box b1;
cout<<"b1的信息为:";
b1.show();//实现长宽高的输出
cout<<"b1的表面积为:"<<b1.mianji()<<endl;
cout<&