C++初阶之递减运算符重载(前置递减、后置递减)

        首先运算符重载的概念:对已有的运算符重新进行定义,赋予另一种功能,以适应不同的数据类型。

        递减运算包括前置递减和后置递减两种。要进行递减运算符重载操作,首先要弄明白二者的区别。前置递减:先让变量-1,然后进行表达式运算。 后置递减:先进行表达式运算,然后让变量-1。

      递减运算符重载的 全部代码如下:

class MyInteger{
friend ostream& operator<<(ostream &cout,MyInteger  myint);
private:
	int m_number;
public:
	MyInteger(){
		m_number =3;
	}

	//前置运算符递减   返回引用是为了一直对一个数据进行递减操作
	MyInteger& operator--()
	{
		//1、先让变量--
		m_number --;
		//2、返回自身
		return *this;


	}

	//后置运算符递减 后置递减返回值,不能返回局部变量的引用  
	//MyInteger  operator--(int)	int代表占位参数,可以用于区分前置和后置
	MyInteger  operator--(int)	
	{
		//1、先记录变量初值
		MyInteger  temp =*this ;
		//2、进行变量进行--操作
		m_number --;
		//3、返回变量初值
		return temp;
	}

};

//左移运算符重载
ostream& operator<<(ostream &cout,MyInteger  myint)
{
	cout<<myint.m_number ;
	return cout;
}

void test01()
{
	MyInteger myint;
	cout<<--myint<<endl;
	cout<<myint<<endl;
	
	
}

int main()
{
	test01();

	system ("pause");
	return 0;


}

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值