注册 登录
编程论坛 C++教室

求救,在VC下编译出错。3处错误

sishui198 发布于 2008-05-14 23:15, 495 次点击
#include<math.h>
#include<iostream.h>
class point
{
private:
     int x,y;
public:
    point (int xx=0,int yy=0)
    {
        x=xx;
        y=yy;
    }
    point (point &p);

    int getx()
    {
        return x;
    }
    int gety()
    {
        return y;
    }
}
point::point(point &p)
{
    x=p.x;
    y=p.y ;
    cout<<p.x;
    cout<<"point 拷贝构造函数被调用"<<endl;
}
class distance
{
private :
    point p1,p2;
    double dist;
public :
    distance(point xp1,point xp2);
    double getdis()
    {
        return dist;
    }
};
    distance::distance(point xp1,point xp2):p1(xp1),p2(xp2)
    {
            cout<<"distance 拷贝构造函数被调用"<<endl;
            double x=double(p1.getx()-p2.getx());
            double y=double(p1.gety()-p2.gety());
            dist =sqrt(x*x+y*y);
    }
void main()
{
    point myp1(1,1),myp2(4,5);

}
2 回复
#2
sunkaidong2008-05-15 09:17
#include<math.h>
#include<iostream.h>
class point
{
private:
     int x,y;
public:
    point(int xx=0,int yy=0)
    {
        x=xx;
        y=yy;
    }
    point(point &p);

    int getx()
    {
        return x;
    }
    int gety()
    {
        return y;
    }
};
point::point(point &p)
{
    x=p.x;
    y=p.y ;
    cout<<p.x;
    cout<<"point 拷贝构造函数被调用"<<endl;
}
class distance
{
private :
    point p1,p2;
    double dist;
public :
    distance(point xp1,point xp2);
    double getdis()
    {
        return dist;
    }
};
    distance::distance(point xp1,point xp2):p1(xp1),p2(xp2)
    {
            cout<<"distance 拷贝构造函数被调用"<<endl;
            double x=double(p1.getx()-p2.getx());
            double y=double(p1.gety()-p2.gety());
            dist =sqrt(x*x+y*y);
    }
void main()
{
    point myp1(1,1),myp2(myp1);

}
#3
sishui1982008-05-15 14:18
谢谢,我知道为什么错了
1