博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
重载运算符操作_学习
阅读量:5951 次
发布时间:2019-06-19

本文共 1696 字,大约阅读时间需要 5 分钟。

//A:  操作符重载实现为类成员函数/*#include 
class Person{private: int age;public: Person(int a){ this->age=a; } //inline bool operator==(const Person &ps)const; inline bool operator==(const Person *ps)const;};//inline bool Person::operator==(const Person &ps)const{// std::cout<<"this->age=="<
age<<", ps.age=="<
<<"\n";// if(this->age == ps.age)// return true;// else// return false;//};inline bool Person::operator==(const Person *ps)const{ std::cout<<"this->age=="<
age<<", ps->age=="<
age<<"\n"; if(this->age == ps->age) return true; else return false;};int main(){ //Person p1(10); //Person p2(10); Person *a = new Person(10); Person *b = new Person(10); //if(p1 == p2) if(a == b) { std::cout<<"相等\n"; }else std::cout<<"不相等\n"; system("pause"); return 0; //由上面的测试可以得出结论,指针与指针之间是不能进行重载运算符比较的}*///B:操作符重载实现为非类成员函数(全局函数)#include
using namespace std;class Person{public: int age;};bool operator==(Person const &p1, Person const &p2){ if(p1.age == p2.age) return true; else return false;};class Test{private: int m_value;public: Test(int x=3){ m_value = x; } Test &operator++(); //前增量 Test &operator++(int);//后增量 void display() { cout<<"m_value="<
<<"\n"; }};//前增量 Test& 是指返回一个Test的地址Test& Test::operator++(){ m_value++; //先增量 return *this; //返回当前对像};//后增量Test& Test::operator++(int){ Test tmp(*this); //创建临时对像 m_value++; //再增量 return tmp; //返回临时对像}int main(){ Person a; Person b; a.age=10; b.age=10; if(a == b){ cout<<"相等\n"; }else cout<<"不相等\n"; cout<<"进行另外一个测试\n"; Test t; t.display(); t++; t.display(); ++t; t.display(); system("pause"); return 0;}

  

转载地址:http://diixx.baihongyu.com/

你可能感兴趣的文章
大数据学习笔记1
查看>>
【NOIP】提高组2016 愤怒的小鸟
查看>>
leetcode 326. Power of Three
查看>>
陈云峰:区块链技术在金融领域的应用与思考
查看>>
time.js 时间函数库
查看>>
部署模式 - 每个主机多个服务实例
查看>>
COJS:1829. [Tyvj 1728]普通平衡树
查看>>
SpringBoot 教程之 profile
查看>>
面试题编程题08-python 垃圾回收机制
查看>>
排序--冒泡
查看>>
java中int->String 3种方式效率分析
查看>>
Android 内存管理 &Memory Leak & OOM 分析
查看>>
你所能用到的数据结构(八)
查看>>
(转)谁是真正的程序语言专家
查看>>
T001 A+B(附常见标准输入输出)
查看>>
Java中abstract class和interface的区别
查看>>
SDWebImage 图片下载缓存框架 常用方法及原理
查看>>
MapReduce分布式缓存程序,无法在Windows下的Eclipse中执行问题解决
查看>>
[转]html5 Canvas画图教程(7)—canvas里画曲线之quadraticCurveTo方法
查看>>
[水]三个数学的小技巧题
查看>>