我不明白为什么这个程序不能运行。我确定这是基本的东西。
#include <iostream>
using namespace std;
class MyPoint
{
int x;
int y;
public:
MyPoint()
{
x = 0;
y = 0;
}
MyPoint(int newX, int newY)
{
x = newX;
y = newY;
}
int getX()
{
return x;
}
int getY()
{
return y;
}
int distance(MyPoint newPoint)
{
distance = x - newPoint.getX();//need absolute value function
return distance;
};
int main()
{
MyPoint point1(0,0);
MyPoint point2(5,5);
cout << "THe distance between the two circles is " << point1.distance(point2) << endl;
return 0;
}
我试图找到两点之间的距离,只是为了测试以确保我正确使用类。我只是使用 x
点而已。现在代码无法编译。
最佳答案
现在,您的第一个问题是 main
在类内部 - 您忘记了 distance
函数后的大括号。你有结束类描述的分号,但你总共有一个大括号太少了。
您的第二个问题是您在名为 distance
的函数中使用了名为 distance
的变量。不要名字冲突,它们会让小猫哭泣。
你的第三个问题是我刚才提到的distance
变量应该是int
类型。
作为另一条一般性建议,当您的代码无法编译时,编译器会给您错误消息。发布这些内容很有帮助。
关于c++ - 计算两点间距离时的编译错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9147644/