- 2
- 0
- 约4.54千字
- 约 6页
- 2016-11-28 发布于河南
- 举报
C程序设计教程8操作符重载
1:可重载的操作符有:
2:重载操作符必须具有一个类类型操作数重载操作符必须具有至少一个类类型或枚举类型的操作数。不能重新定义用于内置类型对象的操作符。
3:优先级和结合性是固定不变的,除了函数调用操作符operator(),重载操作符时使用默认实参是非法的4:不再具有短路求值特性,就是不能保证操作数的求值顺序5:是普通非成员函数,也可以是类成员函数,如果是成员函数,则形参看起来比操作数目少1,第一个形参是this
一般将算术和关系操作符定义为非成员函数,将赋值运算符定义为成员函数
操作符定义为非成员函数是,通常必须将他们设置为所操作类的友员
重载操作符的设计:1:不要重载具有内置含义的操作符,重载逗号,取地址,逻辑与,逻辑或等操作符都不是好的做法2:大多数操作符对类对象没有意义3:如果一个类有算术操作符,或位操作符。那么提供相应的复合赋值操作符一般是一个好的做法4:相等和关系操作符,将要用作关联容器键类型的类应该定义操作符,类通常也该定义==和操作符,因为很多算法假定这些操作符的存在。
下面是一些指导原则a:赋值=,下标[],调用(),和成员访问箭头-等操作符必须定义为成员,将这些定义为非成员函数将在编译时候标记错误b:像赋值一样,复合赋值操作符通常为类的成员,但不这样做不会标记错误c:改变对象状态或与给定类型紧密联系的其他一些操作符,如自增,自减,解引用,
您可能关注的文档
- linux 动态库路径设置小记.doc
- 【翻译】“PE文件格式”1.9版 完整译文(附注释).doc
- Keil C51 V101.doc
- Transparancy 6.ppt
- OOP-07.ObjectLifecycle.ppt
- makefile写法.doc
- 09面向对象方法学引论6.ppt
- Engineering--Makefile详述.doc
- IO_实训.doc
- 29-对象序列化.ppt
- 新疆塔城地区第一高级中学2025-2026学年高一下学期学情自测物理试卷(含解析).docx
- 苏教版五年级上册数学 期中检测卷.doc
- 新疆维吾尔自治区昌吉回族自治州呼图壁县2025-2026学年九年级上学期1月期末英语试题(含解析).docx
- 新疆维吾尔自治区和田地区和田市2025-2026学年上学期八年级英语期末试卷(含解析).docx
- 四川省绵阳市游仙区2025-2026学年七年级上学期1月期末英语试题(含解析).docx
- 苏教版三年级上册数学 第三单元测试题.doc
- 四川省绵阳市梓潼县2025-2026学年八年级上学期1月期末物理试题(含解析).docx
- 四川省绵阳市盐亭县四校联考2025-2026学年八年级下学期物理学情自测(含解析).docx
- 房颤患者太极拳练习.pptx
- 苏教版五年级上册数学 期末检测卷.doc
最近下载
- 情丝难断的母子(小小说).docx VIP
- 2026年中考道德与法治材料关键词转换答题术语(图).docx VIP
- 《媒体与社会》课件.ppt VIP
- 牧马人维修技术资料手册【车主必备】.pdf VIP
- AP宏观经济学 2018年真题 (选择题+问答题) AP Macroeconomics 2018 Released Exam and Answers (MCQ+FRQ).pdf VIP
- 乙肝指南新版标准.docx VIP
- 2025年民政群众身边腐败工作汇报.docx VIP
- 2026年江西中考历史阶段提升检测试卷(附答案解析).docx VIP
- 慢性乙型肝炎诊疗指南 最新版 解读.docx VIP
- 软组织挫伤病历模板.docx VIP
原创力文档

文档评论(0)