求高手帮忙改一下 !!!
#include <iostream>#include <cmath>
using namespace std;
class Point
{
public:
void setCoordinate (int x , int y , int m , int n ,double d );
void setxy (int x, int y);
void setmn (int m, int n);
void print() ;
private:
int X ;
int Y ;
int M ;
int N ;
double D;
double Distance() ;
};
void Point::setCoordinate(int x, int y, int m, int n,double d)
{
X=x;
Y=y;
M=m;
N=n;
D=d;
}
void Point::setxy(int x, int y)
{
cout<< "请输入坐标一x,y"<< endl;
cin >> x>> y;
}
void Point::setmn( int m,int n)
{
cout<< "请输入坐标二m,n"<< endl;
cin >> m>> n;
}
void Point::print()
{
double Distance(double d)
{
return sqrt((x-m)*(x-m)+(y-n)*(y-n));
}
cout<< "距离为" << Distance(d)<<'/n'<<endl;
}
int main()
{ int x,y,m,n;
double d;
Point p;
p.setxy( x , y);
p.setmn( m , n);
p.setCoordinate(x,y,m,n,d);
p.print();
return 0;
}
1.cpp
C:\Program Files (x86)\Microsoft Visual Studio\MyProjects\作业三\1.cpp(53) : error C2601: 'Distance' : local function definitions are illegal
C:\Program Files (x86)\Microsoft Visual Studio\MyProjects\作业三\1.cpp(56) : error C2065: 'd' : undeclared identifier
执行 cl.exe 时出错.
不知道怎么改了 help!!!
改完了,能实现2点间距离的计算
#include <stdio.h>
#include <iostream>
using namespace std;
#include <cmath>
class Point
{
public:
void setxy ();
void setmn ();
void print() ;
private:
double X ;
double Y ;
double M ;
double N ;
double Distance() ;
};
void Point::setxy()
{
cout<< "请输入坐标一x,y"<< endl;
scanf("%lf,%lf",&X,&Y);
}
void Point::setmn()
{
cout<< "请输入坐标二m,n"<< endl;
scanf("%lf,%lf",&M,&N);
}
double Point::Distance()
{
return sqrt(double(X-M)*(X-M)+(Y-N)*(Y-N));
}
void Point::print()
{
cout<< "距离为" << Distance()<<endl;
}
int main()
{
Point p;
p.setxy();
p.setmn();
p.print();
system("pause");
return 0;
}
本帖最后由 Simanzen 于 2014-3-22 18:03 编辑
#include <iostream>
#include <cmath>
using namespace std;
class Point
{
public:
void setxy ();
void setmn ();
void print() ;
private:
int X ;
int Y ;
int M ;
int N ;
};
void Point::setxy()
{
cout<< "请输入坐标一x,y"<< endl;
cin >>X>>Y;
}
void Point::setmn()
{
cout<< "请输入坐标二m,n"<< endl;
cin >>M>>N;
}
void Point::print()
{
cout<< "距离为 " <<sqrt(double((X-M)*(X-M)+(Y-N)*(Y-N))) <<endl;
}
int main()
{
Point p;
p.setxy();
p.setmn();
p.print();
return 0;
}
说实话,lz这样使用类不是很好
machimilk 发表于 2014-3-22 17:08 static/image/common/back.gif
改完了,能实现2点间距离的计算
我是哪里错了呢?我都改蒙了,公有函数里不能带参数吗? 缦ㄟ兮 发表于 2014-3-22 17:50 static/image/common/back.gif
我是哪里错了呢?我都改蒙了,公有函数里不能带参数吗?
是不必要用别的参数,用类的私有数据成员就好了 help????
页:
[1]