社区
C++ 语言
帖子详情
c++中=运算符重载后的困惑!请高手指点
fwinfwin
2003-10-09 09:59:24
自建的一个类myclass,现在从载运算符=
现在对
myclass *a,*b;
b==new myclass();
如果a=b;的时候会发生什么?是把b的指针赋给a,还是会发生对象的拷贝阿?
...全文
81
9
打赏
收藏
c++中=运算符重载后的困惑!请高手指点
自建的一个类myclass,现在从载运算符= 现在对 myclass *a,*b; b==new myclass(); 如果a=b;的时候会发生什么?是把b的指针赋给a,还是会发生对象的拷贝阿?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
leonhart
2003-10-09
打赏
举报
回复
会发生什么就看你怎么重载的了。
AdamKing
2003-10-09
打赏
举报
回复
先判断等号右边是不是其本身!
myclass& operator=(myclass *a,myclass *b)
{
if(a==b) return;
return b;
}
所有可自赋值的,如+=,-=等等,均应该先判断!
lixinwyh
2003-10-09
打赏
举报
回复
好像对等号重载仅限于赋值操作,指针的赋值好像不能重载吧。
xueweizhong
2003-10-09
打赏
举报
回复
关于operator = 的重载
1:不能作为非类的成员函数
2:a = b中的=如果被重载,那么a必须是一个自定义类型
(class, union, enum)
3: 在你的情况中 a的类型是 myclass*, 不是自定义类型,
所以=操作的语义是编译器规定的。
rtdb
2003-10-09
打赏
举报
回复
哇,真的么?
请 micropentium6(小笨) 给个例程,
让
myclass *a,*b;
b=new myclass();
a=b;
可以调用重载运算符=
小笨和漂向北方
2003-10-09
打赏
举报
回复
我觉得这取决于你如何重载的operator=
rtdb
2003-10-09
打赏
举报
回复
myclass a,b;
a=b; 对象的拷贝
rtdb
2003-10-09
打赏
举报
回复
myclass *a,*b;
a=b 把b的指针赋给a
不会有对象的拷贝
fwinfwin
2003-10-09
打赏
举报
回复
越说我越胡涂了阿,先给分再说,
先以rtdb(东临碣石) 和xueweizhong(薛卫忠)说的作为我的答案吧,
反正我先不重载了,用函数copyto()来拷贝算了!
More Exceptional
C++
在本书的每个专题
中
,HerbSutter合理地设想出你的疑问和
困惑
,又有如神助地猜到了你的(可能是错误的)解答,然后给你以
指点
并呈现出最佳方案,最后,还提炼解决类似问题的一般性原则。 本书适合的读者对象是
中
高级...
《More Exceptional
C++
》读书笔记
在本书的每个专题
中
,HerbSutter合理地设想出你的疑问和
困惑
,又有如神助地猜到了你的(可能是错误的)解答,然后给你以
指点
并呈现出最佳方案,最后,还提炼解决类似问题的一般性原则。 本书适合的读者对象是
中
高级...
【转载翻译
C++
之父文章】在纷繁多变的世界里茁壮成长:
C++
2006–2020
这是
C++
之父 Bjarne Stroustrup 的 HOPL4 论文的
中
文版。HOPL 是 History of Programming Languages(编程语言历史)的缩写,是 ACM(Association of Computing Machines,国际计算机协会)旗下的一个会议,约每十...
本人從網上收集的關于c/
c++
的基礎知識(感謝各原創作者)
/*推荐给想学
C++
的朋友一个简单但是完整的学习
C++
的读书路线图:
C++
Primer->
c++
标准程序库-> effective
C++
-> effective STL->深入探索
C++
对象模型C程序常用算法源码 算法(Algorithm):计算机解题的基本思想...
網上收集的關于c/
c++
的基礎知識
推荐给想学
C++
的朋友一个简单但是完整的学习
C++
的读书路线图:
C++
Primer->
c++
标准程序库-> effective
C++
-> effective STL->深入探索
C++
对象模型C程序常用算法源码 算法(Algorithm):计算机解题的基本思想方法...
C++ 语言
64,639
社区成员
250,578
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章