创作人QQ:851301776,邮箱:lfr890207@163.com,欢迎大家一起技术交流,本博客主要是自己学习的心得体会,只为每天进步一点点!
个人座右铭:
1.没有横空出世,只要厚积一定发。
2.你可以学历不高,你可以不上学,但你不能不学习
1.1 计算类双目操作符:+ -
-->表达式结果是右值(不能对表达式进行赋值操作)
-->左右操作数既可以是左值也可以是右值
-->实现方式有两种
1)成员函数形式(左调右参)
L#R的表达式可以被编译器处理成L.operator#(R)成员函数调用形式,该函数的返回结果就是表达式的结果.
...
2)全局函数形式
- #include <iostream>
- using namespace std;
- //复数
- class Complex{
- public:
- Complex(int r,int i):m_r(r),m_i(i){}
- void print(void)const{
- cout << m_r << '+' << m_i << 'i'
- << endl;
- }
- //c1+c2 ==> c1.operator+(c2)
- /*1)修饰返回值,返回右值
- *2)常引用参数,支持常量型右操作数
- *3)常函数,支持常量型左操作数*/
- const Complex operator+(
- const Complex&am