Enclave_ 2022-04-01 09:09 采纳率: 88.5%
浏览 31
已结题

如何初始化以类为参数的

有两个类Point和Triangle 且Point不是Triangle的基类
其中Point类有两个私有数据整型x,y
Triangle类有三个私有数据

img


有参构造函数

img


参数包括3个顶点A,B,C,且默认值为Point(0,0)
测试样例在主函数写下Triangle t1;报错了,所以说构造函数
怎么写才能把A B C默认值初始化为Point(0,0)

img

#include <iostream>
#include <cmath>
using namespace std;
//点类Point
class Point
{
private:
    double x;
    double y;

public:
    Point(double xv = 0, double yv = 0); 
    Point(const Point &p);          
    ~Point();                          
    virtual void show() const;       
    void setX(double xv);              
    void setY(double yv);         
    double getX() const;                 
    double getY() const;               
};
Point::Point(const double xv, const double yv)
{ 
    x = xv;
    y = yv;
    cout << "Point Constructor run" << endl;
}
Point::Point(const Point &p)
{ 
    x = p.x;
    y = p.y;
    cout << "Point CopyConstructor run" << endl;
}
Point::~Point()
{ 
    cout << "Point Destructor run" << endl;
}
void Point::show() const
{ 
    cout << "Point(X=" << x << ",Y=" << y << ")";
}
void Point::setX(double xv)
{ 
    x = xv;
}
void Point::setY(double yv)
{ 
    y = yv;
}
double Point::getX() const
{
    return x;
}
double Point::getY() const
{ 
    return y;
}
class Triangle
{
private:
    Point A;
    Point B;
    Point C;

public:
    Triangle(const Point &a, const Point &b, const Point &c);
    ~Triangle();
};
Triangle::Triangle(const Point &a, const Point &b, const Point &c)
{
    A = a;
    B = b;
    C = c;
}

//主函数
int main(void)
{
    double x, y;
    Point p1, p2(1, 1), p3(2, 2);
    Triangle t1;
    return 0;
}
  • 写回答

1条回答 默认 最新

  • Frank_Liuxing 2022-04-01 09:25
    关注

    真是无语,复制代码不行吗,非要贴图。
    再写一个不带参数的构造函数。

    Triangle()
    {
        A.x  = 0;
        A.y = 0;
        B.x  = 0;
        B.y = 0;
        C.x  = 0;
        C.y = 0;  
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 4月10日
  • 已采纳回答 4月2日
  • 修改了问题 4月1日
  • 修改了问题 4月1日
  • 展开全部

悬赏问题

  • ¥15 这种微信登录授权 谁可以做啊
  • ¥15 请问我该如何添加自己的数据去运行蚁群算法代码
  • ¥20 用HslCommunication 连接欧姆龙 plc有时会连接失败。报异常为“未知错误”
  • ¥15 网络设备配置与管理这个该怎么弄
  • ¥20 机器学习能否像多层线性模型一样处理嵌套数据
  • ¥20 西门子S7-Graph,S7-300,梯形图
  • ¥50 用易语言http 访问不了网页
  • ¥50 safari浏览器fetch提交数据后数据丢失问题
  • ¥15 matlab不知道怎么改,求解答!!
  • ¥15 永磁直线电机的电流环pi调不出来