C ++程序重载一元预增量运算符

阅读:运算符重载及其规则

在这里,我们正在C ++编程中实现/定义一元预递增运算符重载,以对其进行定义:使用运算符键盘作为函数名称,然后编写运算符。

语法:

return_type operator++(function_argument)
{
    //身体
}

看程序:

using namespace std;
#include <iostream>

class Sample
{	
	//私有数据成员
	private:
		int count;
		
	public:
		//默认构造函数 
		Sample()
		{ count = 0;}      
		//参数化的构造函数
		Sample(int c)
		{ count = c;}      

		//运算符重载
		void operator++()
		{ ++count;}
		
		//打印值
		void printValue()
		{
			cout<<"Value of count : "<<count<<endl;
		}
};

//主程序
int main(){
	int i = 0;
	//对象创建
	Sample S1(10);

	for(i=0; i< 10; i++)
	{    
		//递增对象
		++S1;
		//S1++; //错误    
		S1.printValue();
	}

	return 0;    
}

输出结果

Value of count : 11
Value of count : 12
Value of count : 13
Value of count : 14
Value of count : 15
Value of count : 16
Value of count : 17
Value of count : 18
Value of count : 19
Value of count : 20

在此程序中,我们创建了一个名为Sample的类。它包含一个数据成员值。并且我们实现了一个使预增量运算符过载的功能。

我们不能通过这种运算符重载方法使用后增量。

++ S1是正在调用预递增的重载运算符的语句,该语句将增加私有数据成员的值(value)。

我们也可以使用以下语句代替++ S1:S1.operator ++();