c++程序设计 求矩形的面积 我的程序如下 运算结果是-9.25596e+061 请问是哪出了问题?
发布网友
发布时间:2023-05-03 09:59
我来回答
共4个回答
热心网友
时间:2023-10-19 10:06
Rectangle::Rectangle(Point A,Point B):P1(A),P2(B)
{
cout<<"Rectangle构造函数被调用"<<endl;
double h,s,Area;
h=fabs(P1.GetX()-P2.GetX());
s=fabs(P1.GetY()-P2.GetY());
Area=h*s;
}
这里别再次声明Area,Area已经是类Rectangle的成员变量了,你现在再次声明后,这里的Area就变成了函数的局部变量,所以其实你的类成员变量Area并没有被真的赋值
改成
Rectangle::Rectangle(Point A,Point B):P1(A),P2(B)
{
cout<<"Rectangle构造函数被调用"<<endl;
double h,s;
h=fabs(P1.GetX()-P2.GetX());
s=fabs(P1.GetY()-P2.GetY());
Area=h*s;
}
就可以了
热心网友
时间:2023-10-19 10:06
Rectangle::Rectangle(Point A,Point B):P1(A),P2(B)
{
cout<<"Rectangle构造函数被调用"<<endl;
double h,s,Area;
h=fabs(P1.GetX()-P2.GetX());
s=fabs(P1.GetY()-P2.GetY());
Area=h*s;
}
这里错了,double h,s,Area;不应该要 !
跟踪了一下,c++的执行效率好低啊
热心网友
时间:2023-10-19 10:07
内存泄露
热心网友
时间:2023-10-19 10:07
调试下噻.