c++的++运算符重载
来源:互联网 发布:淘宝网儿童羽绒服女款 编辑:程序博客网 时间:2024/06/05 21:15
成员函数实现
#include <iostream>using namespace std;class AA{private:int c;public:AA(int x1){c=x1;//定义前缀和后缀的唯一区别是定义的括号里后缀多了一个int。 }AA operator++(int) //后缀 {AA s=*this; //定义一个对象,这个对象等于传进来的对象值; this->c=this->c+1;//利用this指针对其自身相加; return s; //本身this变了, 对象s却记录了原始的数据,所以能实现先返回最原始的值, //而本身却已经进行加一了。 }AA operator++() //前缀 {this->c=this->c+1;//直接进行加一就行了。 return *this;//返回加一玩的值。 }void show(){cout<<c<<endl;}};int main(){int g;cout<<"原数字为:";cin>>g; AA a(g);a++.show();a.show();(++a).show(); a.show();}
友元函数实现
#include <iostream>using namespace std;class AA{private:int c;public:AA(){}AA(int x1){c=x1;}friend AA operator++(AA &v,int); //后缀 friend AA operator++(AA &b); //前缀 void show(){cout<<c<<endl;}};AA operator++(AA &v,int){AA s=v; //定义一个对象,这个对象等于传进来的对象值; v.c=v.c+1;//利用this指针对其自身相加; return s; //本身this变了, 对象s却记录了原始的数据,所以能实现先返回最原始的值, //而本身却已经进行加一了。 }AA operator++(AA &b) //前缀 {b.c=b.c+1;//直接进行加一就行了。 return b;//返回加一玩的值。 }int main(){int g;cout<<"原数字为:";cin>>g; AA a(g);a++.show();a.show();(++a).show(); a.show();}
0 0
- c++-运算符的重载
- C++--运算符的重载
- [C/C++]运算符的重载
- C++-运算符重载
- [C++]重载运算符
- C#:运算符重载
- c++-++运算符重载
- C++:重载运算符
- 运算符重载(C++)
- [c++]运算符重载
- 【C++】运算符重载
- C++--------------------------------------------运算符重载
- C#:运算符重载
- C++:运算符重载
- C++:运算符重载
- C#:运算符重载
- [C++]运算符重载
- 【c++】运算符重载
- 如何快速转载CSDN中的博客
- JAVA API操作HDFS文件系统
- DockerInAction-Packaging software in images
- ES6入门笔记(一)
- keepalive的使用
- c++的++运算符重载
- Spring中属性文件properties的读取与使用
- CCF关于NOI系列赛事程序设计语言变更的公告
- 根据两点经纬度计算距离 whh博客转载
- 单例模式
- iOS-masonary布局
- 深入理解Yarn的架构及作业调度机制
- Summary of Debugger Extensions in Wdfkd.dll
- NOI系列活动标准竞赛环境(2016年11月08日更新)