函数重载重点在同一个作用域内可以声明几个功能类似的同名函数。这些同名函数的形式参数参数的个数、类型或顺序必须不同。不能仅通过返回类型的不同来重载函数。示例代码#includeiostreamusingnamespacestd;classprintData{public:voidprint(inti){cout整数为: iendl;}voidprint(doublef){cout浮点数为: fendl;}voidprint(charc[]){cout字符串为: cendl;}};intmain(void){printData pd;pd.print(5);pd.print(500.263);charc[]Hello C;pd.print(c);return0;}运算符重载运算符重载允许自定义各种运算符在自定义类型上的行为使自定义类型更加直观和易于使用。基本原则不能创建新运算符只能重载已存在的运算符至少有一个操作数是用户定义的类型不能更改运算符的优先级示例1假设我们有一个Person 类我们可以重载 运算符来实现两个Person是否相等的判断。classPerson{public:string name;intinNumberTail;booloperator(Person pTmp){returnpTmp.namenamepTmp.inNumberTailinNumberTail;}};示例2假设我们有一个简单的 Point 类我们可以重载 运算符来实现两个点的加法。classPoint{public:intx,y;Pointoperator(constPointother)const{returnPoint{xother.x,yother.y};}};注意事项保持运算符行为与原始意图一致避免过度使用导致代码难以理解使用const确保函数不会意外修改对象状态运算符重载是提高代码可读性的强大工具但需谨慎使用以保证代码清晰性和维护性。