gpt4 book ai didi

c++ - 重载 * 运算符仅适用于一个构造函数

转载 作者:行者123 更新时间:2023-11-30 02:50:15 25 4
gpt4 key购买 nike

<分区>

我有课:

class Cline
{
public:

Cline ():ax(1),by(1),c(0){}
Cline (double aa, double bb,double cc):ax(aa*(-1)),by(bb),c(cc){

if(by==0){
exit(1);
}
}


Pkt operator* (const Cline & p)
{
if(p.ax != this->ax)
{
Pkt pkt;
double x=this->ax+(p.ax*(-1));
double c=(this->c*-1)+p.c;

pkt.x=c/x;
pkt.y=(this->ax*pkt.x+this->c)/this->by;

return pkt;
}
else
{
cout<<"no connection";
}
}

void setAX(double w){ax=w;}
void setBY(double w){by=w;}
void setC(double w){c=w;}

double getAX(){return ax;}
double getBY(){return by;}
double getC(){return c;}

private:

double ax;
double by;
double c;
};

当我使用两次第二个构造函数时:

int main()
{

Cline z(1,1,1);
Cline w(4,3,-12);

z*w;

return 0;
}

一切正常,但是当我使用第一个和第二个构造函数时:

 int main()
{

Cline z();
Cline w(4,3,-12);

z*w;

return 0;
}

我收到错误:

 "no match for operators 'z*w' "

有人能告诉我我做错了什么吗?我不知道什么时候是我的错误:(

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com