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

day4 C++

作业

取余运算符重载

#include <iostream>

using namespace std;

class Stu
{
    //使用friend关键字是全局函数operator%可以访问类私有成员变量
    friend const Stu operator%(const Stu &other1,const Stu &other2);
private:
    int a;
    int b;
public:
    Stu(){}
    Stu(int a,int b):a(a),b(b){}

    //成员函数完成取余
//    const Stu operator%(const Stu &other) const
//    {
//        Stu temp;
//        temp.a=a%other.a;
//        temp.b=b%other.b;
//        return temp;
//    }

    void show()
    {
        cout << "a=" << a <<endl;
        cout << "b=" << b <<endl;
    }
};

//全局函数实现取余
const Stu operator%(const Stu &other1,const Stu &other2)
{
    Stu temp;
    temp.a=other1.a % other2.a;
    temp.b=other1.b % other2.b;
    return temp;
}

int main()
{
    Stu s1(2,4);
    Stu s2(3,3);
    Stu s3=s1%s2;
    s3.show();
    return 0;
}

乘法运算符重载

#include <iostream>

using namespace std;

class Stu
{

    friend const Stu operator*(const Stu &other1,const Stu &other2);
private:
    int a;
    int b;
public:
    Stu(){}
    Stu(int a,int b):a(a),b(b){}
//    const Stu operator*(const Stu &other) const
//    {
//        Stu temp;
//        temp.a=a*other.a;
//        temp.b=b*other.b;
//        return temp;
//    }

    void show()
    {
        cout << "a=" << a <<endl;
        cout << "b=" << b <<endl;
    }
};

const Stu operator*(const Stu &other1,const Stu &other2)
{
    Stu temp;
    temp.a=other1.a * other2.a;
    temp.b=other1.b * other2.b;
    return temp;
}

int main()
{
    Stu s1(2,4);
    Stu s2(3,3);
    Stu s3=s1*s2;
    s3.show();
    return 0;
}


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

相关文章:

  • golangci-lint安装与Goland集成
  • 【编辑器扩展】打开持久化路径/缓存路径/DataPath/StreamingAssetsPath文件夹
  • 【Qt】对象树(生命周期管理)和字符集(cout打印乱码问题)
  • centos权限大集合,覆盖多种权限类型,解惑权限后有“. + t s”问题!
  • 分享某大佬微信hook 最新版本 dll (懂得都懂)
  • 写给Pythoner的前端进阶指南(五):事件驱动模型
  • 【STM32】IIC
  • mongodb 在 Windows 环境下迁移数据库的问题
  • Linux:手搓shell
  • 解析淘宝商品详情API返回值中的特殊属性
  • python系列教程231——__init__.py
  • Docker php文件本地包含--pearcmd.php利用
  • Prometheus+Grafana监控数据可视化
  • 反序列化漏洞(一)
  • flume系列之:批量并行启动、停止、重启flume agent组
  • 设计模式之中介者模式
  • Pixelmator Pro for Mac 专业图像处理软件【媲美PS的修图软件】
  • 微信小程序 - 自定义头部导航栏开发
  • 【区块链 + 物联网】车载终端可信分账应用 | FISCO BCOS应用案例
  • 使用docker部署tensorrtllm推理大模型baichuan2-7b
  • 安装包丨WebGIS开发环境搭建及所需工具
  • 2024-MongoDB中国用户大会
  • Pandas 17-行操作和列操作
  • JavaWeb - Vue项目
  • 软考高级网络规划设计师含金量高吗?
  • 数据传输安全——混合加解密(国密)