作用:通过重载递增运算符,实现自己定义的数据类型
代码如下:
#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) { //后置递增返回的是值,不能是引用//先 返回结果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;
}void test02() {MyInteger myint;cout << myint++ << endl;
}int main() {test01();test02();return 0;
}