C++重载关系运算符

cpp 复制代码
#include<iostream>
using namespace std;

class Person
{
public:
	string Name;
	int Age;

	Person(string name, int age)
	{
		Name = name;
		Age = age;
	} 

	bool operator==(Person& p)
	{
		if ((Name == p.Name) && (Age == p.Age))
		{
			return true;
		}
		else
		{
			return false;
		}
	}

	bool operator>=(Person& p)
	{
		if ((Name >= p.Name) && (Age >= p.Age))
		{
			return true;
		}
		else
		{
			return false;
		}
	}

	bool operator<=(Person& p)
	{
		if ((Name <= p.Name) && (Age <= p.Age))
		{
			return true;
		}
		else
		{
			return false;
		}
	}
};

int main() {
	Person p1("张三", 18);
	Person p2("李四", 20);

	if (p1 == p2)
	{
		cout << "p1和p2相等" << endl;
	}
	else
	{
		cout << "p1和p2不相等" << endl;
	}

}
相关推荐
Once_day23 分钟前
Linux之rsyslog(4)属性配置
linux·服务器
waving-black27 分钟前
Linux中自定义服务开机自启nginx
linux·服务器·nginx
Lenyiin27 分钟前
《 Linux 修炼全景指南: 六 》软件包管理器
linux·运维·服务器
陌路2028 分钟前
Linux32 网络编程TCP通信(缓冲区问题)
服务器·网络·tcp/ip
NiKo_W30 分钟前
Linux 重定向与Cookie
linux·运维·服务器·前端·网络·线程·协议
HLJ洛神千羽35 分钟前
Linux下程序设计综合实验报告——图书管理系统(黑龙江大学)
linux·运维·服务器
Kt&Rs40 分钟前
11.9 LeetCode 题目汇总与解题思路
算法·leetcode
ゞ 正在缓冲99%…1 小时前
leetcode1547.切棍子的最小成本
数据结构·算法·leetcode·动态规划
海盗猫鸥1 小时前
「C++」vector的使用及接口模拟详解
开发语言·c++
Arvin6271 小时前
Jenkins Jobs 备份与恢复
linux·运维·服务器