栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C++重载运算符

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C++重载运算符

c++重载运算符笔记 1 、为什么要用这个功能?
  • 定义好后用来计算比较方便
    比如说 对象box1和对象box2内部某些固定的参数要进行的加法运算,一个个点出来加显然很麻烦,还是写个函数更简洁。
2、怎么写这个功能?
Box operator+(const Box&);

把函数写成这个样子,显然,很奇怪的函数。
拆开看const Box&就是这个函数的参数,operator+不用变,固定好的,这里面的Box可以换成自己定义的类名。

3、写个例子
#include 
using namespace std;

class Box
{
public:
    // 重载 + 运算符,用于把两个 Box 对象相加
    Box operator+(const Box &b)
    {
        Box box;
        box.length = this->length + b.length;
        box.breadth = this->breadth + b.breadth;
        box.height = this->height + b.height;
        return box;
    }
    void output(void)
    {
        cout << "length :"<
    Box Box1; // 声明 Box1,类型为box
    Box Box2; // 声明 Box2,类型为box
    Box Box3; // 声明 Box3,类型为box
    // Box1 详述
    Box1.length = 6.0;
    Box1.breadth = 7.0;
    Box1.height = 5.0;

    // Box2 详述
    Box2.length = 12.0;
    Box2.breadth = 13.0;
    Box2.height = 10.0;

    // 把两个对象相加,得到 Box3
    Box3 = Box1 + Box2;
    Box3.output();
    return 0;
}

来瞧瞧运算结果:

length :18

breadth :20

height :15

可以看出, 对象Box1和对象Box2的参数已经相加。
参考资料:C++ 重载运算符和重载函数

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1030055.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号