## Problem B: C++ 長方體繼承自矩形

[ Submit][ Status][ Web Board]

## Description

#include <iostream>
using namespace std;
class Rectangle //矩形類
{
private:
int length; //矩形的長和寬
int width;
public:
Rectangle();
Rectangle(int l,int w); //構造函數，l、w分別代表長和寬
int getArea(); //求面積
};

class Bulk: public Rectangle //立方體類
{
public:
Bulk(); //默認構造函數
Bulk(int l, int w,int h); //帶參數的構造函數
int getVolume();
private:
int height; //高，長、寬繼承自基類
};

/*

......

*/

//*********** end ***************

int main()
{
int x,y,z;
cin>>x>>y>>z;
Bulk b(x,y,z);
cout<<b.getVolume()<<endl;
return 0;
}

3 4 5

60

## HINT

```#include <iostream>
using namespace std;
class Rectangle   //矩形類
{
private:
int length;  //矩形的長和寬
int width;
public:
Rectangle();
Rectangle(int l,int w); //構造函數，l、w分別代表長和寬
int getArea();   //求面積
};

class Bulk: public Rectangle   //立方體類
{
public:
Bulk(); //默認構造函數
Bulk(int l, int w,int h); //帶參數的構造函數
int  getVolume();
private:
int height;   //高，長、寬繼承自基類
};//*********** begin *************

//Rectangle類的成員函數
Rectangle::Rectangle()
{}

Rectangle::Rectangle(int l,int w):length(l), width(w){}

int Rectangle::getArea()
{
return length*width;
}

//Bulk類的成員函數
Bulk::Bulk(){}//Rectangle();
Bulk::Bulk(int l, int w,int h):Rectangle(l, w),height(h){}
//Bulk::Bulk(int l, int w,int h):length(l),wedth(w),height(h){}
int Bulk::getVolume()
{
return getArea()*height;
};

int main()
{
int x,y,z;
cin>>x>>y>>z;
Bulk b(x,y,z);
cout<<b.getVolume()<<endl;
return 0;
}```