一个代码的错误求改正!

wangsiyuanoo wangsiyuanoo 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
#include <iostream>
using namespace std;
//////////形状类/////////////////////
class CShape
{
public:
virtual double GetArea() = 0;
};
//////////////圆类///////////////////////
const double g_Pi = 3.1415926;
class CCircle : public CShape
{
CCircle()
{

}

CCircle(double r) : m_dRadius(r)
{

}

~CCircle()
{

}

void SetRadius(double r)
{
m_dRadius = r;
}
public:
virtual double GetArea()
{
return m_dRadius* m_dRadius * g_Pi;
}

protected:
double m_dRadius; //半径
};
//////////////长方形类//////////////////////
class CRect:public CShape
{
CRect()
{


}
CRect(double a,double b)
{


}
~CRect()
{


}
void SetLength (double a,double b)
{
m_dLength1 = a;
m_dLength2 = b;

}

public:
virtual double GetArea()
{
return m_dLength1 * m_dLength2;

}
protected:
double m_dLength1; //边长
double m_dLength2;

};

/////////主函数////////////////////////
void main()
{
CShape* pCircle = new CCircle(5);
pCircle->GetArea();
delete pCircle;


CRect box(10,5);
box.GetArea();
}

编译时出现这个错误:error C2248: 'CCircle::CCircle' : cannot access private member declared in class 'CCircle'
error C2248: 'CRect::CRect' : cannot access private member declared in class 'CRect'
error C2248: 'CRect::~CRect' : cannot access private member declared in class 'CRec
怎么改正错误啊??????????



...全文
评论 5
收藏 已收藏
分享
返回顶部
wangsiyuanoo
C++ 语言 65,214 成员 250,514 内容