CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C/C++ >  C++ 语言

复制构造函数不懂

楼主hailun(大海)2005-09-21 13:32:15 在 C/C++ / C++ 语言 提问

#include<iostream.h>  
  class   point  
  {int   X,Y;  
  public:  
  int   xcoord(){return   X;}  
  int   ycoord(){return   Y;}  
  point(int   x,int   y){X=x;Y=y;}  
  pint(point   &p)//这个是什么意思呀?  
  {X=p.X;//这个是什么意思呀?  
  Y=p.Y;//这个是什么意思呀?  
  };  
  ~point()  
  {cout<<"destructor   is   called"<<endl;  
  };  
  };  
  void   main()  
  {point   A(8,5);  
  point   B=A;  
  cout<<"B="<<B.xcoord()<<":"<<B.ycoord()<<endl;  
  }  
   
  下面这四条一条也不懂  
  pint(point   &p)//这个是什么意思呀?  
  {X=p.X;//这个是什么意思呀?  
  Y=p.Y;//这个是什么意思呀?  
  };  
   
   
  运行结果是:B=5:-858993460不和答案一样呀  
  下面的二个结果是一样的  
  destructor   is   called  
  destructor   is   called  
   
  问题点数:20、回复次数:10Top

1 楼foochow(无聊,灌水......)回复于 2005-09-21 13:42:14 得分 2

pint(point   &p)//这个是什么意思呀?  
  {X=p.X;//这个是什么意思呀?  
  Y=p.Y;//这个是什么意思呀?  
  };  
  //拷贝构造函数,用一个对象来初始化一个另一个对象...  
  Top

2 楼foochow(无聊,灌水......)回复于 2005-09-21 13:43:22 得分 2

运行结果  
  B=8:5  
  destructor   is   called  
  destructor   is   called  
   
  Top

3 楼fujingn188()回复于 2005-09-21 13:59:40 得分 2

默认构造函数是不带参数的,但是当想用一个对象来初始化另一个对象时就需要传递该对象的参数,所以就有了你想问的这个构造函数.Top

4 楼hailun(大海)回复于 2005-09-21 14:01:48 得分 2

复制构造函数的定义:  
  <类名>::<类名>(<<类名>&<参数>)  
  {...}  
  本题的point(point   &p)  
  前面是不是少了point::呀  
  是不是应该point::pint(point   &p)这样才对呀Top

5 楼pbcd(沙漠绿州)回复于 2005-09-21 14:02:18 得分 2

应该写成   point(point   &p)吧!Top

6 楼hailun(大海)回复于 2005-09-21 14:16:30 得分 2

书上就是这样定义的呀  
  复制构造函数的定义:  
  <类名>::<类名>(<<类名>&<参数>)  
  {...}  
   
  所以我认为应该是point::point(point   &p)  
  而不是point(point   &p),不知道为什么会这样写呢Top

7 楼pyzs2004(丟丟)回复于 2005-09-21 15:28:49 得分 2

它是使用的內聯﹐所以就不要類名了。如果在類外定義的話就要。Top

8 楼sinall()回复于 2005-09-21 15:38:00 得分 2

拷贝构造函数,当然,你的这个类也可以不定义,因为它只有内置简单变量,可以不定义拷贝构造函数,使用系统自身提供的即可。  
  Top

9 楼minjunyu(飞天小鱼)回复于 2005-09-21 17:53:00 得分 2

你就当做&p里存放着构造函数,&p就是一个内存地址,它存放着构造函数。Top

10 楼djfu(飞龙在天)回复于 2005-09-21 18:19:06 得分 2

太多基础的东西你不懂了,好好看点基础的书。Top

相关问题

  • 复制构造函数的疑问
  • 复制构造函数的使用
  • 复制构造函数和赋值函数的问题。。。。求达人讲解。。。。
  • 关于模板拷贝构造函数(模板拷贝复制函数)
  • 关于复制构造函数的一个问题。
  • 复制构造函数的问题,题目中(求助)
  • 关于复制构造函数的一个问题
  • 再问复制构造函数的调用
  • 构造函数
  • 构造函数

关键词

  • 函数
  • 构造函数
  • point
  • 意思呀
  • 应该

得分解答快速导航

  • 帖主:hailun
  • foochow
  • foochow
  • fujingn188
  • hailun
  • pbcd
  • hailun
  • pyzs2004
  • sinall
  • minjunyu
  • djfu

相关链接

  • C/C++ Blog
  • C/C++类图书
  • C/C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo