简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长!
优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀
人生格言: 人生从来没有捷径,只有行动才是治疗恐惧和懒惰的唯一良药.
1.前言
本篇目的:理解C++11的operator重载运算符应用。
2.用法
重载赋值运算符 “=“和”<<”
<1>.例一
#include <iostream>
using namespace std;
class MyNumber {
private:
int value;
public:
MyNumber(int val): value(val) {}
// 重载+运算符,用于实现两个MyNumber对象相加
MyNumber operator+(const MyNumber& other) {
MyNumber result(value + other.value);
return result;
}
// 重载<<运算符,用于以自定义格式输出MyNumber对象
friend std::ostream& operator<<(std::ostream& os, const MyNumber& num) {
os << "MyNumber value: " << num.value;
return os;
}
};
int main() {
MyNumber num1(5);
MyNumber num2(10);
// 使用重载的+运算符对MyNumber对象进行相加
MyNumber sum = num1 + num2;
//使用重载的<<打印输出。
std::cout << "Sum: " << sum << std::endl;
return 0;
}
打印:Sum: MyNumber value: 15
如果没有重载 "<<"运算符,打印结果如下:
Sum: 15
2.总结
operator重载运算符本质是将“=”、“<<“、”["等符号重新写了,将这些重写的符号赋予新的功能而已。