永发信息网

看看这个程序

答案:3  悬赏:10  手机版
解决时间 2021-04-25 18:59

#include "iostream.h"
#include "math.h"
#include "conio.h"
class Point
{
int X,Y;
public:
Point(int x=0,int y=0)
{ X=x; Y=y; }
Point(Point &p);
int Getx() { return X; }
int Gety() { return Y; }
void disp()
{ cout<<"("<<X<<","<<Y<<")"; }
};
Point::Point(Point &p)
{
X=p.X;
Y=p.Y;
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)
{
cout<<"Distance 构造函数被调用"<<endl;
double x=double(xp1.Getx()-xp2.Getx());
double y=double(xp1.Gety()-xp2.Gety());
dist=sqrt(x*x+y*y);
}
void main()
{
Point p1(1,2),p2(8,6);
Distance d(p1,p2);
p1.disp();
cout<<"和";
p2.disp();
cout<<"两个点的距离:"<<d.Getdis()<<endl;
getch();
}

//先你们看下运行结果,看能不能输出四个Point复制函数被调用的情况//

最佳答案

你自定义的构造函数(习惯这样说)有三个:


第一:


Point(int x=0,int y=0)
{ X=x; Y=y; }


第二:
Point::Point(Point &p)
{
X=p.X;
Y=p.Y;
cout<<"Point 复制构造函数被调用"<<endl;
}


第三:


Distance::Distance(Point xp1,Point xp2)
{
cout<<"Distance 构造函数被调用"<<endl;
double x=double(xp1.Getx()-xp2.Getx());
double y=double(xp1.Gety()-xp2.Gety());
dist=sqrt(x*x+y*y);
}

执行此语语:


Point p1(1,2),p2(8,6);


时,系统调用第一个,但你第一个构造函数里面没有写cout语句,所以调用时不会显示出来.执行Distance d(p1,p2);时,因为p1,p2已行初始化了,所以系统只调用第三个构造函数.我的VS2010出现了问题,所以没办法调试,不好意思.

全部回答
只能出两个
这是什么语言?好像比c语言要复杂些,很想帮你,可是我学的不是很好,而且忘了。你这个程序我有些看的不是很明白
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
梦幻西游新区炎魔神卡片一张多少钱满次的
H T C 手机是国产么
QQ三国里的一级黄玉多少钱一个!
亲们有仿佛世界只剩下哥哥们和ELF们的经历吗?
我下载的TXT电子书怎么看不了阿,连接到电脑
我想买台笔记本电脑4500元左右的,谁给推荐下
比喻文章写的好的诗句,求写给兄弟的励志话语
绥江县城市社区卫生服务中心地址有知道的么?
那啥,生物的5’ 加帽咋会事
帮我推荐几款保湿的和隔离的东东.THX
月经来了同房一次
淘宝店怎么开. 请加QQ仔细讲解
从洛阳到三门峡观音堂?
康康晚上你几点上床睡觉,英文翻译?
怎么样可以快速挣到钱,大家有什么好方法?
推荐资讯
祥和旅馆(阿勒泰福海县)地址在哪,我要去那里
异地恋最美情话短句,异地恋情话
从今年的快乐男生,大家都看出什么没有?
痛也是舒服
淘宝如何设置运费到付,淘宝如何让买家承担运
第四章破魔套效果恢复了吗?
想要找个老婆就那么难吗?
求高二英语课文阅读听力
婚烟不是一个人的问题,离婚那是谁的错?
性能好的手机买什么牌子的?
婴儿屁眼有时候会红红的,是什么原因
六个月的胎儿有两天很激烈,昨天开始不激烈了
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?