前置 后置 ++ 运算符重载
作者:互联网
1 前置 后置 ++ 运算符重载
1.1 自己实现int类型 MyInteger
1.2 内部维护以int数据
1.3 MyInteger myInt
1.4 myInt ++ 后置 ++myInt 前置
1.5 重载++运算符 operator++() 前置 operator++(int) 后置
1.6 前置理念 先++ 后返回自身 后置理念 先保存住原有值 内部++ 返回临时据数
#define _CRT_SECURE_NO_WARNINGS #include<iostream> using namespace std; class MyInteger { friend ostream& operator<<(ostream& cout, MyInteger & myInt); public: MyInteger() { m_Num = 0; }; //前置++重载 MyInteger& operator++() { this->m_Num++; return *this; } //后置++ 重载 MyInteger operator++(int) { //先保存目前数据 MyInteger tmp = *this; m_Num++; return tmp; } 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; //cout << myInt++ << endl; // 后置++ //cout << myInt << endl; } int main(){ test01(); /*int a = 10; cout << ++(++a) << endl; cout << a << endl;*/ system("pause"); return EXIT_SUCCESS; }
标签:MyInteger,后置,++,前置,operator,运算符,int,重载 来源: https://www.cnblogs.com/Malphite/p/14395454.html