1.递增运算符重载
作用: 通过重载递增运算符,实现自己的整型数据
2.前置++和后置++重载测试代码:
#include<iostream>
using namespace std;
//重载递增运算符
//自定义整型
class MyInteger
{
friend ostream& operator<<(ostream& cout, MyInteger myint);
public:
MyInteger() {
m_Num = 0;
}
//重载前置++运算符 返回引用为了一直对一个数据进行递增操作
MyInteger& operator++() {
//先进行++运算
m_Num++;
//在将自身进行一个返回
return *this;
}
//重载后置++运算符
//下面int代表占位参数:可以用于区分前置和后置递增
MyInteger operator++(int) {//加int的原因是为了函数重载,否则会报错
//先 记录一下当前的结果
MyInteger temp = *this;
//后 递增
m_Num++;
//最后将记录结果做返回
return temp;
}
private:
int m_Num;
};
//重载<<运算符
ostream& operator<<(ostream& cout, MyInteger myint) {
cout << myint.m_Num;
return cout;
}
void test01() {
MyInteger myint;
cout << "前置++前:" << myint << endl;
cout << "前置++后:" << ++myint << endl;
}
void test02() {
MyInteger myint;
cout << "后置++前:"<<myint++ << endl;
cout <<"后置++后:"<< myint << endl;
}
int main() {
//前置重载
test01();
//后置重载
test02();
system("pause");
return 0;
}