100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > C++ 前置和后置

C++ 前置和后置

时间:2019-06-06 00:33:24

相关推荐

C++ 前置和后置

#include <iostream>// 重载前置和后置操作符class UInt{public:UInt():m_id(0) {}friend std::ostream& operator<<(std::ostream& cout, const UInt &it);// 前置自增UInt& operator++() {std::cout<<"prefix++"<<std::endl;(*this) +=1;return *this;}// 后置自增,为了区分前置自增,参数中需要有int类型参数(函数体中并不用到,实参都是0)// 需要申请变量保留旧的值const UInt operator++(int i) {std::cout<<"postfix++"<<std::endl;UInt old = *this;++(*this);return old;// 函数返回const原因是,不支持it++++操作,即便支持,后面++也是对it++的对象进行加1,而不是it加1}UInt& operator+=(int i) {std::cout<<"+="<<std::endl;(*this).m_id +=i;return *this;}int m_id;};std::ostream& operator<<(std::ostream& cout, const UInt &it){std::cout<<it.m_id<<std::endl;return cout;}void Test(){UInt it;it++;std::cout<<it<<std::endl;UInt it1;++(++it1);std::cout<<it1<<std::endl;}int main(){Test();return 0;}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。