社区
C语言
帖子详情
运算符重载时的参数是否一定需要引用??
hxn
2000-08-24 04:49:00
运算符重载时的参数是否一定需要引用??
所看例子都是这样??如果不是引用。编译有问题。
请讲讲。谢谢!
-- Programming is my life!
欢迎访问我的网页
http://hushui.yeah.net
是关于C编程和Linux的
...全文
550
7
打赏
收藏
运算符重载时的参数是否一定需要引用??
运算符重载时的参数是否一定需要引用?? 所看例子都是这样??如果不是引用。编译有问题。 请讲讲。谢谢! -- Programming is my life! 欢迎访问我的网页 http://hushui.yeah.net 是关于C编程和Linux的
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
cber
2001-06-03
打赏
举报
回复
xubin_sh(徐彬)和graygu(graygu)说的都对:)
graygu
2001-06-03
打赏
举报
回复
只有返回值是Ivlaue(左值)时,才用到参数引用。
xyk_king
2001-06-03
打赏
举报
回复
你说的是参数的引用还是引用返回值,我想你说的是参数的引用吧,但不是一定要那样吧,只有当需要引用的时候才用吧!
vcgreener
2000-08-28
打赏
举报
回复
//运算符重载时的参数是否一定需要引用??
我觉得不一定需要引用。这应该是关于函数形参与实参的值传递问题。
//所看例子都是这样??
不会吧。
//如果不是引用。编译有问题。
能说说你是怎么用的吗?
xubin_sh
2000-08-25
打赏
举报
回复
jhb说的不错,因为只有引用可以作为l-value
jhb
2000-08-24
打赏
举报
回复
不是一定要返回引用,只是在如cout<<j<<k这种连续使用的情况下会出现问题。因为前个操作符的返回是作为后一个操作符的参数使用的,可能会类型不匹配的。
Kevin_qing
2000-08-24
打赏
举报
回复
不是吧,应该不要的
如...
void operator delete(void *ptr);
叙述讲解C++编程
本书作者根据自己学习C++的亲身体会及多年教学经验,用简单的例子和简练的叙述讲解C++编程,别具特色。 全书共分十八章,内容涉及对象的演化、数据抽象、隐藏实现、初始化与清除、函数重载与缺省
参数
、输入输出流介绍、常量、内联函数、命名控制、
引用
和拷贝构造函数、
运算符重载
、动态对象创建、继承和组合、多态和虚函数、模板和包容器类、多重继承、异常处理和运行
时
类型识别。 本书作为正式教材和自学用书均非常优秀,作为程序设计者的参考用书亦极为合适。
C++
引用
和
运算符重载
目录创建
引用
变量将函数作为
引用
参数
将
引用
用于结构
引用
应用于类对象
引用
应用于
运算符重载
何
时
使用
引用
参数
为什么引入
运算符重载
?重载运算符的定义和使用重载限制 创建
引用
变量 C++和C都用&符号来表示变量的地址。C++给&符号赋予了另一个含义,将其用来声明
引用
。例如: int rats int & rodents=rats // make rodents an alias for rats(给rats取一个别名) &不是地址操作符,而是类型标识符的一部分,将rodents的类
朱老师C++第2部分-2.4.C++的
运算符重载
《跟朱老师从C高级到C++》属于系列课程《朱有鹏老师热门编程语言系列》的第一部分,主要针对C++语言完全学习。本课程可以看做是嵌入式linux核心课程中《C语言高级专题》课程的延续,在学了C语言前提下继续深度学习C++语言。整个课程共分为5部分。涵盖了C++基础语法和使用,面向对象,STL与泛型,Boost库和设计模式,C++编程优化技巧等非常广泛的内容,是市面上非常缺少的深度学习C++,培养编程技能和修养的一套系列学习课程。整个课程预计2020年底前录制完成,总
时
长预计150-200小
时
。朱老师C++第1部分-从C到C++朱老师C++第2部分-C++和面向对象朱老师C++第3部分-STL等高阶话题朱老师C++第4部分-Boost库和设计模式朱老师C++第5部分-C++编程优化课程特色*零基础可学习,降低学习门槛。*深入浅出,通俗易懂。不怕学不会,就怕你不学习。*思路清晰、语言风趣,对着视频看也不会想睡觉······*视频 + 文档 + 练习题 + 答疑,全方位保证学习质量。*基础知识 + 思路引导的教学方式,授之以鱼更授之以渔。*系列课程。本教程只是入门篇,后续还有更多更精彩视频更新中。
C++语法——详解
运算符重载
运算符重载
是C++的一个重要特性。有了
运算符重载
,在代码编写
时
能更好的实现封装。 一.
运算符重载
介绍
运算符重载
,就是让原本已经存在的运算符有了新的用法和意义。 比如我们熟知的减号(-),原本是用来进行数字的相减处理。但经过
运算符重载
后,它可以用来进行其他类型的相减,像
时
间相减、日期相减、字符相减等等。只要是你能想到的,通过
运算符重载
基本都能够实现。 对于C++而言,
运算符重载
一般是作为类的成员函数出现。因为当我们
需要
运算符重载
时
,往往是类中一种特殊的类型
需要
处理或者类本身
需要
处理。就像我们可能会把.
运算符重载
函数的
参数
类型以及返回值类型
参数
类型: 大家都知道
运算符重载
函数的
参数
类型必须是
引用
类型,这是为什么呢。拿我们最常用的赋值
运算符重载
来说,如果
参数
类型不是
引用
类型,那么传参
时
就
需要
一个对象的副本,将实参复制到形参,这种复制是浅复制,并不会为形参分配内存空间,这就导致如果类中有指针类型,形参和实参的指针就指向同一块内存,再调用析构函数
时
就会出错。返回值类型: 同理返回值类型也要是
引用
类型,因为调用赋值
运算符重载
函数
时
也会创建
C语言
69,382
社区成员
243,073
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章