社区
C++ 语言
帖子详情
位拷贝与值拷贝
airsong_wjs
2008-11-06 12:16:07
加精
什么是位拷贝和值拷贝?
一直没有找到很好的资料阿~
它们与深拷贝和浅拷贝有什么区别?
...全文
4556
128
打赏
收藏
位拷贝与值拷贝
什么是位拷贝和值拷贝? 一直没有找到很好的资料阿~ 它们与深拷贝和浅拷贝有什么区别?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
128 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
yuphore
2012-08-21
打赏
举报
回复
学习了,MARK
airwolf1216
2012-07-24
打赏
举报
回复
用不着区分什么位拷贝值拷贝 什么深拷贝浅拷贝 什么传值传址 这些完全是程序员不懂指针而产生的意淫性术语
airwolf1216
2012-07-24
打赏
举报
回复
[Quote=引用 125 楼 的回复:]
引用 13 楼 的回复:
引用 4 楼 jackzhhuang 的回复:
浅拷贝和深拷贝多数是相对于指针、用户定义的类来说的:
浅拷贝就是:
C/C++ codechar* p = new char('C');
char * q = p;
深拷贝就是:
C/C++ codechar* p = new char('C');
char * q = new……
[/Quote]
看错了 没泄露内存 但也不是位拷贝值拷贝
airwolf1216
2012-07-24
打赏
举报
回复
[Quote=引用 13 楼 的回复:]
引用 4 楼 jackzhhuang 的回复:
浅拷贝和深拷贝多数是相对于指针、用户定义的类来说的:
浅拷贝就是:
C/C++ codechar* p = new char('C');
char * q = p;
深拷贝就是:
C/C++ codechar* p = new char('C');
char * q = new char;
*q = *……
[/Quote]
胡说 这哪是值拷贝位拷贝 4楼的程序内存泄露
真正意义上 没有什么值拷贝位拷贝 所谓值拷贝位拷贝 完全是程序员的意淫而已
说白了 那玩意就是 是否两个指针指向了同一地址 导致释放内存时候产生了野指针
「已注销」
2011-12-03
打赏
举报
回复
mark下。学习。
位按地址,值就是按内容
pathuang68
2011-04-29
打赏
举报
回复
位拷贝 = bitwise copy = shallow clone = 浅拷贝
值拷贝 = memberwise copy = deep clone = 深拷贝
cxyOOOO
2011-04-29
打赏
举报
回复
长生贴呀。
jeromewen
2011-01-25
打赏
举报
回复
学习了
cmlr_
2011-01-10
打赏
举报
回复
值拷贝即
p = q
位拷贝
memcpy(&p, &q, sizeof(q))
这是我的理解,看似没错?
人到中年琐事多
2010-12-16
打赏
举报
回复
[Quote=引用 67 楼 program2050 的回复:]
谁来解释一下it = *(int*)&ft; // 按位拷
[/Quote]
变换一下容易看明白:
int *p=(int*)&ft;
it=*p;
感觉也非按拉拷,因为最后有个*提取了引用,还是按值拷
mskmc_mc
2010-12-15
打赏
举报
回复
哦,原来就是对拷贝方法的一种称呼,搞的太深了
就是指针与指针的拷贝,指针指向的值与指针指向的值的拷贝··
花气袭人知昼暖
2010-12-15
打赏
举报
回复
好好学习之
erhan_106
2010-12-14
打赏
举报
回复
[Quote=引用 7 楼 chiyer 的回复:]
转个文章
C++中的位拷贝和值拷贝
abc2001 发表于 2008-1-16 12:18:00
0
推荐
为了便于说明我们以String类为例:
首先定义String类,而并不实现其成员函数。
Class String{
public:
String(const char *ch=NULL);//默认构造函数
String(const String &……
[/Quote]
学习了,顶。
mskmc_mc
2010-08-10
打赏
举报
回复
按值拷贝
即类中定义了类对象
按引用拷贝
即类中定义了引用或指针
都知道,类对象是不支持面向对象的,但是一个类对象支持自动构造,自动析构和自动拷贝、赋值,
如果这个类对象做为一个对象成员,将会使我们的代码管理很方便。
而C++中支持面向对象的只有引用和指针,它们可以在运行期间指向不同类型(继承关系),但是我们的代价必须自己管理这些指针或引用。
xzw3455
2010-08-10
打赏
举报
回复
我怎么什么都不懂啊
x46108447
2010-08-10
打赏
举报
回复
晕 ...
SuperLampard
2010-07-02
打赏
举报
回复
结帖率 0.00000000%
偶是江湖中人
2010-07-02
打赏
举报
回复
学习了
huhacn
2010-07-02
打赏
举报
回复
[Quote=引用 93 楼 genius52z 的回复:]
其实都是值传递,只不过一个拷贝的是存放的地址(指针)。
一个拷贝的是指针所指向内存中的内容。
[/Quote]
+1
当参数是地址(指针)时,则通过改变生成的临时变量的解引用便能改变这个地址存放的值,
若是内容,则声称的临时变量与原来的变量便只是数值上的相等了
wxc1987821
2010-07-02
打赏
举报
回复
学习了
加载更多回复(106)
Python进阶课程-科学计算库Numpy
Numpy是Python最基本最...Numpy中核心的一些知识点,包括Numpy的属性,创建array,Numpy的运算,矩阵运算,随机数生成,Numpy的索引,array的合并与分割,Numpy的浅
拷贝
深
拷贝
等内容。帮助大家快速学习Numpy的使用。
C++中的
位
拷贝
与值
拷贝
浅谈
位
拷贝
拷贝
的是地址(也叫浅
拷贝
),而值
拷贝
则
拷贝
的是内容(深
拷贝
)。深
拷贝
和浅
拷贝
可以简单理解为:如果一个类拥有资源,当这个类的对象发生复制过程的时候,资源重新分配,这个过程就是深
拷贝
,反之,没有重新分配资源,就是浅
拷贝
。
位
拷贝
,及"bitwise assignment"是指将一个对象的内存映像按
位
原封不动的复制给另一个对象,所谓值
拷贝
就是指,将原对象的值复制一份给新对象。 在用
C语言中的
位
拷贝
与值
拷贝
浅谈
注:C语言实现的PHP变量的赋值过程中,就涉及到了 深
拷贝
和浅
拷贝
位
拷贝
拷贝
的是地址(也叫浅
拷贝
),而值
拷贝
则
拷贝
的是内容(深
拷贝
)。深
拷贝
和浅
拷贝
可以简单理解为:如果一个类拥有资源,当这个类的对象发生复制过程的时候,资源重新分配,这个过程就是深
拷贝
,反之,没有重新分配资源,就是浅
拷贝
。
位
拷贝
,及"bitwise assignment"是指将一个对象的内存映像按
位
原封不
C语言拾遗:
位
拷贝
与值
拷贝
,浅
拷贝
与深
拷贝
先留个题目,下午回来总结下。。。 吃饭去
浅
拷贝
、深
拷贝
、值
拷贝
和
位
拷贝
首先:
位
拷贝
就是浅
拷贝
,值
拷贝
就是深
拷贝
。编译器会在必要的时候,自己产生默认的
拷贝
构造函数和赋值函数,采用的
位
拷贝
。自己可以重新定义
拷贝
构造函数,要注意采用值
拷贝
。 Q:什么是浅
拷贝
(shallow copy)和深
拷贝
(deep copy)? A: 浅
拷贝
就是成员数据之间的一一赋值,但是可能会有这样的情况:对象还包含资源,这里的资源可以是堆资源,或者一个文件。当值
拷贝
的时候,
C++ 语言
64,643
社区成员
250,475
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章