1 运算符重载基础概念 #
mindmap
id1[运算符重载基础概念]
id1-1[运算符重载的定义与意义]
id1-2[运算符重载的基本概念]
id1-3[运算符重载的必要性和优势]
id1-4[运算符重载的应用场景]
id1-5[运算符重载的限制与规则]
id1-6[可重载运算符列表]
id1-7[不可重载运算符列表]
id1-8[运算符重载的基本语法规则]
id1-9[运算符重载的优先级和结合性]
id1-10[成员函数与非成员函数重载]
id1-11[成员函数重载运算符]
id1-12[非成员函数重载运算符]
id1-13[友元函数在运算符重载中的应用]
id1-14[两种方式的比较与选择]
运算符重载的定义与意义
运算符重载的基本概念
运算符重载的必要性和优势
运算符重载的应用场景
运算符重载的限制与规则
可重载运算符列表
不可重载运算符列表
运算符重载的基本语法规则
运算符重载的优先级和结合性
成员函数与非成员函数重载
成员函数重载运算符
非成员函数重载运算符
友元函数在运算符重载中的应用
两种方式的比较与选择
2 元运算符重载 #
递增递减运算符
前缀递增运算符 ++ 重载
后缀递增运算符 ++ 重载
前缀递减运算符 -- 重载
后缀递减运算符 -- 重载
递增递减运算符的实现区别
正负运算符
正号运算符 + 重载
负号运算符 - 重载
逻辑非运算符 ! 重载
按位取反运算符 ~ 重载
指针相关运算符
取地址运算符 & 重载
指针解引用运算符 * 重载
成员访问运算符 -> 重载
成员指针访问运算符 ->* 重载
mindmap
id2[元运算符重载]
id2-1[递增递减运算符]
id2-2[前缀递增运算符 ++ 重载]
id2-3[后缀递增运算符 ++ 重载]
id2-4[前缀递减运算符 -- 重载]
id2-5[后缀递减运算符 -- 重载]
id2-6[递增递减运算符的实现区别]
id2-7[正负运算符]
id2-8[正号运算符 + 重载]
id2-9[负号运算符 - 重载]
id2-10[逻辑非运算符 ! 重载]
id2-11[按位取反运算符 ~ 重载]
id2-12[指针相关运算符]
id2-13[取地址运算符 & 重载]
id2-14[指针解引用运算符 * 重载]
id2-15[成员访问运算符 -> 重载]
id2-16[成员指针访问运算符 ->* 重载]
3 元运算符重载 #
mindmap
id3[元运算符重载]
id3-1[算术运算符]
id3-2[加法运算符 + 重载]
id3-3[减法运算符 - 重载]
id3-4[乘法运算符 * 重载]
id3-5[除法运算符 / 重载]
id3-6[取模运算符 % 重载]
id3-7[关系运算符]
id3-8[等于运算符 == 重载]
id3-9[不等于运算符 != 重载]
id3-10[大于运算符 > 重载]
id3-11[小于运算符 < 重载]
id3-12[大于等于运算符 >= 重载]
id3-13[小于等于运算符 <= 重载]
id3-14[逻辑运算符]
id3-15[逻辑与运算符 && 重载]
id3-16[逻辑或运算符 || 重载]
id3-17[逻辑运算符的短路特性]
id3-18[位运算符]
id3-19[按位与运算符 & 重载]
id3-20[按位或运算符 | 重载]
id3-21[按位异或运算符 ^ 重载]
id3-22[左移运算符 << 重载]
id3-23[右移运算符 >> 重载]
id3-24[赋值运算符]
id3-25[简单赋值运算符 = 重载]
id3-26[复合赋值运算符 +=, -=等 重载]
id3-27[赋值运算符的返回值考虑]
id3-28[拷贝赋值与移动赋值]
算术运算符
加法运算符 + 重载
减法运算符 - 重载
乘法运算符 * 重载
除法运算符 / 重载
取模运算符 % 重载
关系运算符
等于运算符 == 重载
不等于运算符 != 重载
大于运算符 > 重载
小于运算符 < 重载
大于等于运算符 >= 重载
小于等于运算符 <= 重载
逻辑运算符
逻辑与运算符 && 重载
逻辑或运算符 || 重载
逻辑运算符的短路特性
位运算符
按位与运算符 & 重载
按位或运算符 | 重载
按位异或运算符 ^ 重载
左移运算符 << 重载
右移运算符 >> 重载
赋值运算符
简单赋值运算符 = 重载
复合赋值运算符 +=, -=等 重载
赋值运算符的返回值考虑
拷贝赋值与移动赋值
4 特殊运算符重载 #
函数调用运算符
函数调用运算符 重载
函数对象 Functor 的概念
函数对象的应用场景
Lambda表达式与函数对象
下标运算符
下标运算符 [] 重载
常量版本与非常量版本
多维下标运算符实现
边界检查与异常处理
类型转换运算符
类型转换运算符重载
显式类型转换与隐式类型转换
转换运算符的注意事项
避免循环转换问题
内存管理运算符
new运算符重载
delete运算符重载
new[]运算符重载
delete[]运算符重载
定位new运算符
mindmap
id4[特殊运算符重载]
id4-1[函数调用运算符]
id4-2[函数调用运算符 重载]
id4-3[函数对象 Functor 的概念]
id4-4[函数对象的应用场景]
id4-5[Lambda表达式与函数对象]
id4-6[下标运算符]
id4-7[下标运算符 [] 重载]
id4-8[常量版本与非常量版本]
id4-9[多维下标运算符实现]
id4-10[边界检查与异常处理]
id4-11[类型转换运算符]
id4-12[类型转换运算符重载]
id4-13[显式类型转换与隐式类型转换]
id4-14[转换运算符的注意事项]
id4-15[避免循环转换问题]
id4-16[内存管理运算符]
id4-17[new运算符重载]
id4-18[delete运算符重载]
id4-19[new[]运算符重载]
id4-20[delete[]运算符重载]
id4-21[定位new运算符]
5 流运算符重载 #
mindmap
id5[流运算符重载]
id5-1[输入输出流运算符]
id5-2[输出流运算符 << 重载]
id5-3[输入流运算符 >> 重载]
id5-4[流运算符的重载规则]
id5-5[格式化输出控制]
id5-6[文件流运算符]
id5-7[文件输入输出运算符重载]
id5-8[进制流运算符重载]
id5-9[流状态处理]
id5-10[错误处理机制]
输入输出流运算符
输出流运算符 << 重载
输入流运算符 >> 重载
流运算符的重载规则
格式化输出控制
文件流运算符
文件输入输出运算符重载
进制流运算符重载
流状态处理
错误处理机制
6 运算符重载的高级主题 #
运算符重载与模板
模板类中的运算符重载
运算符重载的模板特化
概念 Concepts 与运算符重载
SFINAE在运算符重载中的应用
运算符重载的性能考虑
运算符重载的效率分析
内联运算符重载
移动语义与运算符重载
返回值优化 RVO
运算符重载的设计原则
运算符重载的一致性原则
运算符重载的直观性原则
运算符重载的完备性原则
运算符重载的安全性原则
常见设计模式中的运算符重载
迭代器模式与运算符重载
智能指针与运算符重载
数值类型包装类
字符串类运算符重载
mindmap
id6[运算符重载的高级主题]
id6-1[运算符重载与模板]
id6-2[模板类中的运算符重载]
id6-3[运算符重载的模板特化]
id6-4[概念 Concepts 与运算符重载]
id6-5[SFINAE在运算符重载中的应用]
id6-6[运算符重载的性能考虑]
id6-7[运算符重载的效率分析]
id6-8[内联运算符重载]
id6-9[移动语义与运算符重载]
id6-10[返回值优化 RVO]
id6-11[运算符重载的设计原则]
id6-12[运算符重载的一致性原则]
id6-13[运算符重载的直观性原则]
id6-14[运算符重载的完备性原则]
id6-15[运算符重载的安全性原则]
id6-16[常见设计模式中的运算符重载]
id6-17[迭代器模式与运算符重载]
id6-18[智能指针与运算符重载]
id6-19[数值类型包装类]
id6-20[字符串类运算符重载]
7 运算符重载的实际应用 #
mindmap
id7[运算符重载的实际应用]
id7-1[数学类运算符重载]
id7-2[复数类运算符重载]
id7-3[矩阵类运算符重载]
id7-4[向量类运算符重载]
id7-5[分数类运算符重载]
id7-6[容器类运算符重载]
id7-7[数组类运算符重载]
id7-8[链表类运算符重载]
id7-9[映射类运算符重载]
id7-10[集合类运算符重载]
id7-11[字符串处理类]
id7-12[字符串连接运算符]
id7-13[字符串比较运算符]
id7-14[字符串转换运算符]
id7-15[字符串流运算符]
id7-16[日期时间类]
id7-17[日期运算运算符]
id7-18[时间运算运算符]
id7-19[日期时间比较运算符]
id7-20[日期时间格式化输出]
数学类运算符重载
复数类运算符重载
矩阵类运算符重载
向量类运算符重载
分数类运算符重载
容器类运算符重载
数组类运算符重载
链表类运算符重载
映射类运算符重载
集合类运算符重载
字符串处理类
字符串连接运算符
字符串比较运算符
字符串转换运算符
字符串流运算符
日期时间类
日期运算运算符
时间运算运算符
日期时间比较运算符
日期时间格式化输出
8 运算符重载的最佳实践与陷阱 #
常见错误与调试
运算符重载的常见错误
调试技巧与方法
单元测试策略
性能 profiling
代码规范与风格
运算符重载的命名规范
代码格式与注释
文档编写要求
团队协作规范
兼容性与可维护性
向后兼容性考虑
代码重构技巧
版本控制策略
依赖管理
现代C++特性应用
C++11/14/17/20新特性
路比较运算符 <=>
概念 Concepts 约束
模块 Modules 中的运算符重载
mindmap
id8[运算符重载的最佳实践与陷阱]
id8-1[常见错误与调试]
id8-2[运算符重载的常见错误]
id8-3[调试技巧与方法]
id8-4[单元测试策略]
id8-5[性能 profiling]
id8-6[代码规范与风格]
id8-7[运算符重载的命名规范]
id8-8[代码格式与注释]
id8-9[文档编写要求]
id8-10[团队协作规范]
id8-11[兼容性与可维护性]
id8-12[向后兼容性考虑]
id8-13[代码重构技巧]
id8-14[版本控制策略]
id8-15[依赖管理]
id8-16[现代C++特性应用]
id8-17[C++11/14/17/20新特性]
id8-18[路比较运算符 <=>]
id8-19[概念 Concepts 约束]
id8-20[模块 Modules 中的运算符重载]