当前位置: 首页 > article >正文

C++关系运算符重载

#include<iostream>
using namespace std;

class Person {
public:
	string name;
	int age;
	Person(string n, int a)
	{
		name = n;
		age = a;
	}
	//friend bool operator==(Person& p1, Person& p2);  使用友元
	//成员函数实现函数关系符重载==
	bool operator==(Person& p) {
		if (name == p.name && age == p.age) {
			return true;
		}
		return false;
	}
	//
	bool operator!=(Person& pp) {
		if (name == pp.name && age == pp.age) {
			return true;
		}
		return false;
	}
};
全局函数实现关系符重载
//bool operator==(Person& p1,Person &p2) {
//	if (p1.name == p2.name && p1.age == p2.age) {
//		return true;
//	}
//	return false;
//}
void test01()
{
	Person p1("huanggang",18);
	Person p2("huanggang",18);
	Person p3("huanggang", 11);
	Person p4("huanggang", 18);

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

int main()
{
	//test01();
	test01();
	return 0;
}

http://www.kler.cn/a/132795.html

相关文章:

  • 脑机接口、嵌入式 AI 、工业级 MR、空间视频和下一代 XR 浏览器丨RTE2024 空间计算和新硬件专场回顾
  • 怎样在软件设计中选择使用GOF设计模式
  • mybatis 动态SQL语句
  • 快排和归并
  • 【设计模式】行为型模式(五):解释器模式、访问者模式、依赖注入
  • Unity3D 完整直升机控制器(虚拟仿真级别)
  • PHP 中传值与传引用的区别,什么时候传值什么时候传引用?
  • html书本翻页效果,浪漫表白日记本(附源码)
  • 苍穹外卖--实现公共字段自动填充
  • C++知识点总结(6):高精度乘法真题代码
  • 信号的机制——信号的发送与处理
  • spring+pom-注意多重依赖时的兼容问题[java.lang.NoSuchMethodError]
  • Milk Scheduling S——拓扑排序
  • 机器学习:十大算法快速回顾
  • 计算机毕业设计 基于SpringBoot的车辆网位置信息管理系统的设计与实现 Java实战项目 附源码+文档+视频讲解
  • 振南技术干货集:比萨斜塔要倒了,倾斜传感器快来!(6)
  • Induced AI:一个专门为自动化任务而设计的AI原生浏览器RPA平台
  • 苍穹外卖项目笔记(2)
  • 【Java并发编程三】线程的基本使用一
  • SpringBoot整合Thymeleaf
  • C语言实现冒泡排序(超详细)
  • 使用FFmpeg合并多个ts视频文件转为mp4格式
  • 网站页头被挂马状态及新增了index.html文件解决思路
  • MacOS设置JAVA_HOME环境变量
  • Linux学习命令之source
  • 前端mockjs使用方式[express-mockjs]