クラス 2 変数の 1 つから継承しようとしていますが、他のクラスの関数の 1 つの値を返すことができるようにするためには、これらの変数が等しくなければなりません。
class Rectangle: public Shape{
double Length;
double Width;
public:
Rectangle(double Length, double Width):
Shape("Rectangle")
{
this->Length=Length;
this->Width=Width;
}
double getPerimerter(){
return 2 * (Length+Width);
}
double getArea(){
return Length * Width;
}
};
class Square: public Shape, public Rectangle{
double Side;
public:
Square():
Shape("Square"),
Rectangle(Length,Width)
{}
double getPerimerter(){
if(Length==Width)
return 4 * (Length+Width);
}
double getArea(){
if(Length==Width)
return (Length+Width) * (Length+Width);
}
};
ご覧のとおり、Length と Width という名前のプライベート変数を保持する Rectangle という具体的なクラス呼び出しが既にあります。私がしようとしているのは、このクラスをクラス Square に継承することです。Length と Width が等しい場合は、正方形の面積と周長を返します..