运算符重载、this指针、复制与拷贝构造、生存周期、箭头操作符
有一部分是学校的OJ里做题需要就提前学了,然后没记笔记,有一部分是笔记丢了。不打算补这些笔记。
不过还是在这里mark一下++运算符的重载。
因为++运算符可以前置也可以后置,所以这里需要注意一下,如果是后置++,需要一个int伪参数作以区分。
以下是在 C++ 中可以被重载的运算符:
- 算术运算符:'+','-','*','/','%','++','--'
- 位运算符:'&','|','~','^','<<','>>'
- 赋值运算符:'=','+=','-=','*=','/=','%=','&=','|=','^=','<<=','>>='
- 关系运算符:'==','!=','<','>','<=','>='
- 逻辑运算符:'!','&&','||'
以下是在 C++ 中只能被重载为友元函数的运算符:
- 左移运算符:'<<'
- 右移运算符:'>>'
- 函数调用运算符:'()'
- 下标运算符:'[]'
- 指针成员访问运算符:'->'
- 解引用运算符:'*'