栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C++ 递增和递减运算符重载

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C++ 递增和递减运算符重载

#include 
#include 
using namespace std;
//递增运算符重载
class myint {
//友元就可以访问了
friend	ostream& operator<<(ostream& out, myint mm);
public:
	myint() {//构造函数
		m_num = 0;
	}
	//重载++运算符
myint &operator++() {//前置递增
		m_num++;
		return *this;//返回引用
	}
myint& operator++(int) {//后置递增
	//展位参数,区别前置和后置(必须是int)
	//先记录结果
	myint zz = *this;
	m_num++;
	return zz;//返回值
}
myint& operator--() {//前置--
	m_num--;
	return *this;//返回引用
}
myint& operator--(int) {//后置--
	//展位参数,区别前置和后置(必须是int)
	//先记录结果
	myint zz = *this;
	m_num--;
	return zz;//返回值
}
private:
	int m_num;
};
//重载左移运算符
ostream& operator<<(ostream& out, myint mm) {
	out << mm.m_num;
	return out;
}
int main() {
	myint m;
	cout << m--<< endl;//没有匹配的<<运算符
	cout << m << endl;
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/857701.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号