私はC++に非常に慣れていないので、簡単なことを見落としていたら許してください。私はクラスサークルを持っています:
class Circle: public Shape{
protected:
//string name;
Point focus;
float radius;
private:
public:
virtual void calculateArea();
virtual void calculatePerimeter();
Circle();
Circle(Point p, float r);
};
2 つのコンストラクターがあり、そのうちの 1 つはオーバーロードしたデフォルトです。
Circle::Circle()
{
Point p(1,1);
focus = p;
radius = 10;
name = "Circle";
calculatePerimeter();
calculateArea();
cout<<"default circle"<<endl;
}
Circle::Circle(Point p, float r)
{
focus = p;
radius = r;
name = "Circle";
calculatePerimeter();
calculateArea();
}
私のメインでは、each コンストラクターを使用して 1 つずつ 2 つの円を作成しようとしていますが、Circle() で作成された円は決して作成されません。私は一生、理由を理解できませんか?エラーメッセージなどはありません。
int main{
Circle circle(a, 3.3);
Circle c2();
}