编译为什么出问题 输出正方形面积体积

#include <iostream>
using namespace std;
class Square
{ private:
    int edge;
  public:
      int Circumference;
      int Area;
      Square (int x,int y,int z)
      {edge=x;Circumference=y;Area=z;}
      void SetA()
    { cin>>edge;}
      void getA()
      { Circumference=4*edge;
        Area=edge*edge;
      cout<<"边长为"<<edge<<"的正方形,面积="<<Area<<endl;
      cout<<"边长为"<<edge<<"的正方形,周长="<<Circumference<<endl;
    }
};
class Cube:public Square
{ public:
    int Volumn;
    void setB(int i)
    { Volumn=i;}
    void getAll()
    { cout<<"边长为"<<edge<<"的正方形,面积="<<Area<<endl;
      cout<<"边长为"<<edge<<"的正方形,体积="<<Volumn<<endl;
    }
};
int main()
{Cube a;
 a.getA();
 a.getAll();
 return 0;
}
      
 

你都不会看报错信息的吗?已经提示的很明显了。edge的访问类型是private,Cube无法访问。你改为public或者protect。还有把

	Square(int x, int y, int z)
	{
		edge = x; Circumference = y; Area = z;
	}

删了

C和C++完整教程:https://blog.csdn.net/it_xiangqiang/category_10581430.html
C和C++算法完整教程:https://blog.csdn.net/it_xiangqiang/category_10768339.html