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

C++运算符重载练习

#include <iostream>   // 引入输入输出流库
using namespace std;  // 使用标准命名空间,避免每次写 std::// 定义一个名为 Person 的类,表示“人”的概念
class Person
{
public:string name;         // 姓名int inNumberTail;    // 身份证尾号(最后6位)// 重载 == 运算符,用于判断两个 Person 对象是否“相等”// 根据需求:如果两个人的名字相同且身份证尾号相同,则认为他们是同一个人bool operator==(Person pTmp);
};// 实现 == 运算符重载函数
// 参数是另一个 Person 对象(pTmp)
// 返回值是布尔类型,表示当前对象(this)和传入的对象是否相等
bool Person::operator==(Person pTmp){// 比较两个对象的 name 和 inNumberTail 是否都相等return pTmp.name == name && pTmp.inNumberTail == inNumberTail;
}// 主函数,程序的入口点
int main()
{// 创建两个 Person 对象 p1 和 p2,并初始化它们的成员变量Person p1;p1.name = "张三";            // 设置姓名为“张三”p1.inNumberTail = 412508;    // 设置身份证尾号为 412508Person p2;p2.name = "张三";            // 设置姓名为“张三”p2.inNumberTail = 412508;    // 设置身份证尾号也为 412508// 使用重载的 == 运算符比较 p1 和 p2bool ret = p1 == p2;// 输出比较结果(true 或 false)// 在 C++ 中,true 显示为 1,false 显示为 0cout << ret << endl;  // 预期输出 1,因为两个对象的 name 和 inNumberTail 相同return 0;  // 程序正常结束,返回 0
}

总结:

  • 功能:该程序定义了一个 Person 类,并通过重载 == 运算符来判断两个 Person 对象是否代表同一个人。
  • 判断依据:如果两个对象的 name 和 inNumberTail(身份证尾号)都相同,则认为这两个对象“相等”。
  • 测试用例:在 main() 函数中创建了两个完全相同的 Person 对象,并使用 == 比较它们,输出结果为 1(即 true)。

✅ 如果你需要进一步扩展这个类(比如添加构造函数、封装成员变量、处理更多个人信息),可以继续优化。

http://www.dtcms.com/a/195537.html

相关文章:

  • 【python编程从入门到到实践】第十章 文件和异常
  • 遥感图像非法采矿矿区识别分割数据集labelme格式1818张3类别
  • 人脸表情识别检测数据集VOC+YOLO格式9400张8类别
  • linux环境下 安装svn并且创建svn版本库详细教程
  • python中元组的操作
  • 149.WEB渗透测试-MySQL基础(四)
  • 三轴云台之智能分析与识别技术篇
  • 蒟蒻编程日志
  • 腾讯云代码助手CodeBuddy使用体验
  • 第八章 模板项目生成
  • Matrix-Game:键鼠实时控制、实时生成的游戏生成模型(论文代码详细解读)
  • SPL做量化---MTM(动量指数)
  • Linux!启动~
  • 大模型对比
  • Grafana分布统计:Heatmap面板
  • 计算机视觉----感兴趣区域(ROI)、非极大值抑制
  • 探究电阻分压的带负载能力
  • DeepEval:快速搭建 LLM 评估框架实战「喂饭教程」
  • 机器学习数据预处理回归预测中标准化和归一化
  • C语言单链表应用详解
  • 【程序员AI入门:模型】19.开源模型工程化全攻略:从选型部署到高效集成,LangChain与One-API双剑合璧
  • 【目标检测】RT-DETR
  • PT2031K单触控单输出触摸IC
  • 【数据结构】线性表--栈
  • 网络攻防模拟:城市安全 “数字预演”
  • 记录一个为打印高清而做投喂图像增强的例子
  • leetcode2749. 得到整数零需要执行的最少操作数-medium
  • 第二十六天打卡
  • python版本管理工具-pyenv轻松切换多个Python版本
  • 求职困境:开发、AI、运维、自动化