VC驿站

 找回密码
 加入驿站

QQ登录

只需一步,快速开始

搜索
查看: 874|回复: 0

[讨论] 请教:C++里的浅拷贝和深拷贝

[复制链接]
46_avatar_middle
最佳答案
0 
在线会员 发表于 2016-10-14 17:44:38 | 显示全部楼层 |阅读模式
       自学C++时有个问题没弄明白,还希望大牛告知。
书上的例子:(前面定义了一个类)
void main()
{
        Name stu1("Jerry");
        Name stu2=stu1;   //调用系统默认的拷贝构造函数
}
【程序分析】执行语句Name stu2=stu1;用已经存在的对象stu1为新创建的对象stu2赋值,由于类中没有定义拷贝构造函数,于是调用系统提供的默认的拷贝构造函数,将stu1的数据成员的值直接复制给新对象stu2.并未给对象stu2分配内存。。。
那么问题来了:为什么没有给stu2分配内存空间?
Name stu2=stu1;这一句不就是新建了一个对象stu2并且初始化了吗(就像int a=9;)?新建局部对象stu2的同时没有在栈里分配内存?




上一篇:C语言程序简单一例——数学问题
下一篇:C语言程序例题经典——日期计算
您需要登录后才可以回帖 登录 | 加入驿站 qq_login

本版积分规则

×【发帖 友情提示】
1、请回复有意义的内容,请勿恶意灌水;
2、纯数字、字母、表情等无意义的内容系统将自动删除;
3、若正常回复后帖子被自动删除,为系统误删的情况,请重新回复其他正常内容或等待管理员审核通过后会自动发布;
4、感谢您对VC驿站一如既往的支持,谢谢合作!

关闭

站长提醒上一条 /2 下一条

QQ|小黑屋|手机版|VC驿站 ( 辽ICP备09019393号 )|网站地图wx_jqr

GMT+8, 2020-10-22 11:07

Powered by CcTry.CoM

© 2009-2020 cctry.com

快速回复 返回顶部 返回列表