计算机C++知识点:重载运算符
求学快递网计算机等级考试专题重点推荐:2016年计算机二级考试报考时间 、2016年计算机二级考试证书领取时间、2016年计算机二级考试报考指南、2016年计算机二级考试大纲、2016年计算机二级考试政策、2016年计算机二级考试报考条件、2016年计算机二级考试科目等最新新闻资讯。
重载是由P.J.Plauger发现的。
一重载运算符的时机
1需要在定义的对象间相互赋值时,重载赋值运算符
2需要在数字类型增加算术属性时,重载算术运算符
3需要为定义的对象进行逻辑比较时,重载关系运算符
4对于container,重载下标运算符[]
5需要从I/O流中读写对象时,重载 <<和>>运算符。
6重载成员指针运算符 - > 以实现smart指针
7在少数情况下重载new,delete运算符
8不重载其他运算符
实际上任何用重载运算符完成的工作都可以使用成员函数来实现。
重载的运算符可以和原来的运算符不一定有必然联系,例如我重载"+"运算马夫,可以不做加法运算,而是把字符串连接起来。当然你要是用"+"运算符来做减法运算,也是可以的,不过这不是明智之举。
二重载运算符的规则
1重载的运算符不能违反语言的语法规则
2如果一个运算符可以放在两个操作数之间,就可以重载它来满足类操作的需要,哪怕这种用法原本为编译器不能接受。
3不能创造C++语言中没有的运算符
4下列运算符不能重载
. 类成员运算符
.* 成员指针运算符
:: 域解析运算符
?: 条件表达式运算符
5。重载时不能改变运算符的优先级
三运算符重载
运算符重载是通过对运算符函数的重载来实现的。对于每一个运算符@,在C++中都对应一个运算符函数operator@,其中@为C++各种运算符。
运算符函数的一般原型为:
type operator@ (arglist)
其中type为运算结果的类型,arglist为操作数列表。
关注求学快递网计算机等级考试专题,帮你了解最新的2016年计算机二级考试资讯服务和2016计算机二级考试成绩查询,让你轻松备考计算机等级考试!
求学快递网计算机等级考试专题的小编们根据网民搜索喜爱,第一时间公布2016年计算机二级模拟试题、2016年计算机二级考试应试技巧、计算机二级考试历年真题、2016年计算机二级考试章节复习供广大求学爱好者学习使用,欢迎继续关注求学快递网计算机等级考试专题,并给我们提供宝贵的意见!