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

c++ day 4

代码整理, 将学过的三种运算符重载,每个至少实现一个运算符的重载:分别是-,-=,<。

#include <iostream>using namespace std;
class Stu
{friend const Stu operator-(const Stu &L,const Stu &R);friend bool operator<(const Stu &L,const Stu &R);friend Stu &operator-=(Stu &L,const Stu &R);
private:int a;int b;
public:Stu(){}Stu(int a,int b):a(a),b(b){}
//    const Stu operator-(const Stu &R)const //算数成员函数-=
//    {
//        Stu temp;
//        temp.a=a-R.a;
//        temp.b=b-R.b;
//        return temp;
//    }//--------------------------------------------------------------------------------------------------
//    bool operator<(const Stu &R)
//    {
//        if (a<R.a && b<R.b)
//        {
//            return true;
//        }
//        else
//        {
//            return false;
//        }
//    }
//-----------------------------------------------------------------------------------------------
//    Stu &operator-=(const Stu &R)
//    {
//        a-=R.a;
//        b-=R.b;
//        return *this;
//    }
//----------------------------------------------------------------------------------------------void show(){cout << "a= " << a << " " << "b=" << b << endl;}
};
const Stu operator-(const Stu &L,const Stu &R)
{Stu temp;temp.a=L.a-R.a;temp.b=L.b-R.b;return  temp;
}
bool operator<(const Stu &L,const Stu &R)
{if (L.a<R.a && L.b<R.b){return  true;}else{return false;}
}
Stu &operator-=(Stu &L,const Stu &R)
{L.a-=R.a;L.b-=R.b;return L;
}
int main()
{Stu s1(10,11);Stu s2(10,11);Stu s3=s1-s2;s3.show();if (s3<s1){cout << "s3<s1" << endl;}s1-=s3;s1.show();return 0;
}

相关文章:

  • 【slab/0x40 UAF】TPCTF2023 - core 一题多解
  • Linux查看计算机处理器相关的信息
  • 在oracle中的scn技术
  • C/C++ 发送与接收HTTP/S请求
  • ChatGPT 问世一周年之际,开源大模型能否迎头赶上?
  • NoSQL 数据建模错误会降低性能
  • Linux: FS: inotify
  • matlab 计算两点云之间的放缩倍数
  • python+Qt5+sqllite 个性化单词记忆软件设计
  • 水库监管AI视觉算法与边缘计算盒子
  • 通过查看ThreadLocal的源码进行简单理解
  • Unittest单元测试之unittest用例执行顺序
  • 机器学习笔记 - 基于百度飞桨PaddleSeg的人体分割模型以及TensorRT部署说明
  • 【C++初阶(十)】set、map、multiset、multimap的介绍及使用
  • 【Qt】获取当前系统用户名:9种获取方式
  • Date型的使用
  • ES6 学习笔记(一)let,const和解构赋值
  • GDB 调试 Mysql 实战(三)优先队列排序算法中的行记录长度统计是怎么来的(上)...
  • HTTP请求重发
  • SpiderData 2019年2月16日 DApp数据排行榜
  • ⭐ Unity 开发bug —— 打包后shader失效或者bug (我这里用Shader做两张图片的合并发现了问题)
  • 阿里云应用高可用服务公测发布
  • 工作踩坑系列——https访问遇到“已阻止载入混合活动内容”
  • 关于for循环的简单归纳
  • 简单数学运算程序(不定期更新)
  • 警报:线上事故之CountDownLatch的威力
  • 聊聊flink的BlobWriter
  • 排序算法学习笔记
  • 前端技术周刊 2018-12-10:前端自动化测试
  • MPAndroidChart 教程:Y轴 YAxis
  • 容器镜像
  • ​ ​Redis(五)主从复制:主从模式介绍、配置、拓扑(一主一从结构、一主多从结构、树形主从结构)、原理(复制过程、​​​​​​​数据同步psync)、总结
  • ​queue --- 一个同步的队列类​
  • ###STL(标准模板库)
  • (4)通过调用hadoop的java api实现本地文件上传到hadoop文件系统上
  • (C语言)fgets与fputs函数详解
  • (二)pulsar安装在独立的docker中,python测试
  • (附源码)springboot码头作业管理系统 毕业设计 341654
  • (接口封装)
  • (离散数学)逻辑连接词
  • (深入.Net平台的软件系统分层开发).第一章.上机练习.20170424
  • (转)setTimeout 和 setInterval 的区别
  • .locked1、locked勒索病毒解密方法|勒索病毒解决|勒索病毒恢复|数据库修复
  • .net core 控制台应用程序读取配置文件app.config
  • .NET 使用 ILRepack 合并多个程序集(替代 ILMerge),避免引入额外的依赖
  • .Net接口调试与案例
  • .net下简单快捷的数值高低位切换
  • .pub是什么文件_Rust 模块和文件 - 「译」
  • .pyc文件还原.py文件_Python什么情况下会生成pyc文件?
  • .stream().map与.stream().flatMap的使用
  • @html.ActionLink的几种参数格式
  • @KafkaListener注解详解(一)| 常用参数详解
  • @SuppressLint(NewApi)和@TargetApi()的区别
  • @Validated和@Valid校验参数区别
  • [ C++ ] STL---string类的模拟实现