📄 程序10.07:前缀和后缀增量运算符重载.cpp
字号:
/* 程序10.7:前缀和后缀增量运算符重载.cpp:*/
#include<iostream> //包含头文件
using namespace std; //使用名字空间std
#include<string> //包含头文件
class MyNum //声明一个类MyNum
{
private:
int iNumber; //声明私有成员变量
public:
MyNum(); //声明构造符函数
MyNum(int iNumber); //声明构造符函数
MyNum operator++(); //声明前缀增量运算符函数
MyNum operator++(int); //声明后缀增量运算符函数
void display(string); //声明显示成员变量函数
};
int main() //main()函数开始
{
MyNum MyN1(100); //声明类对象MyN1,自动调用带参数构造符
MyNum MyN2; //声明类对象MyN2,自动调用无参数构造符
MyN2=++MyN1; //等价于MyN1.operator++()
cout<<"\n调用operator++()取负成员函数后"<<endl;
MyN1.display("MyN1"); //调用显示成员变量函数
MyN2.display("MyN2"); //调用显示成员变量函数
MyN2=MyN1++; //等价于MyN1.operator++(0)
cout<<"\n调用operator++(int)取负成员函数后"<<endl;
MyN1.display("MyN1"); //调用显示成员变量函数
MyN2.display("MyN2"); //调用显示成员变量函数
return 0;
} //main()函数结束
MyNum::MyNum() //定义无参数构造符函数
{
iNumber=0;
}
MyNum::MyNum(int iNumber) //定义有参数构造符函数
{
this->iNumber=iNumber;
}
MyNum MyNum::operator++() //定义前缀增量运算符函数
{
MyNum Temp;
iNumber=iNumber+1;
Temp.iNumber=iNumber;
return Temp;
}
MyNum MyNum::operator++(int)//定义后缀增量运算符函数
{
MyNum Temp;
Temp.iNumber=iNumber;
iNumber=iNumber+1;
return Temp;
}
void MyNum::display(string s)//定义显示成员变量函数
{
cout<<s<<" = "<<iNumber<<endl;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -