c++的运算符重载 operator前&是必要的吗 有什么作用吗 求解-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

c++的运算符重载 operator前&是必要的吗 有什么作用吗 求解

2016-03-06 10:54:33 3728 4

c++的运算符重载 operator前&是必要的吗 有什么作用吗 求解 谢谢各位
同问0 |浏览449|

C++
取消 提交回答
全部回答(4)
  • 游客duzwdtzqsaq3i
    2020-08-03 20:12:19

    非必须,减少调用时的构造和拷贝消耗

    0 0
  • nothingfinal
    2019-07-17 18:54:15

    运算符重载的方法是定义一个重载运算符的函数,在需要执行被重载的运算符时,系统就自动调用该函数,以实现相应的运算。也就是说,运算符重载是通过定义函数实现的。运算符重载实质上是函数的重载。重载运算符的函数一般格式如下:

    函数类型 operator 运算符名称 (形参表列)
    {
    对运算符的重载处理
    }
    不是必须的
    有&是引用,调用;有可能改变其后变量的值;
    无&,其后的变量仅仅参与运算,不会改变其值

    0 0
  • xumaojun
    2019-07-17 18:54:15

    运算符重载的方法是定义一个重载运算符的函数,在需要执行被重载的运算符时,系统就自动调用该函数,以实现相应的运算。也就是说,运算符重载是通过定义函数实现的。运算符重载实质上是函数的重载。重载运算符的函数一般格式如下:

          函数类型 operator 运算符名称 (形参表列)
          { 
          对运算符的重载处理
          }

    不是必须的
    有&是引用,调用;有可能改变其后变量的值;
    无&,其后的变量仅仅参与运算,不会改变其值


    运算符重载的方法是定义一个重载运算符的函数,在需要执行被重载的运算符时,系统就自动调用该函数,以实现相应的运算。也就是说,运算符重载是通过定义函数实现的。运算符重载实质上是函数的重载。重载运算符的函数一般格式如下:

    函数类型 operator 运算符名称 (形参表列)
    {
    对运算符的重载处理
    }
    不是必须的
    有&是引用,调用;有可能改变其后变量的值;
    无&,其后的变量仅仅参与运算,不会改变其值

    0 0
  • a123456678
    2019-07-17 18:54:15

    &表示返回值类型是引用
    什么时候需要返回引用, 基于两点
    第一是需求, 有些情况语法要求必须返回引用
    比如重载=操作符, 返回引用才可写出 a1=a2=a3这样的语句
    再如[]操作符, 返回引用才能实现这样的语句: a[0]=1;

    第二是效率问题:
    很多情况是不需要返回引用的, 比如双目的+, 可以是返回一个对象的副本, 但是返回引用比返回对象的副本效率要高, 因为返回副本最少要有两次拷贝构造被调用, 对于一个体积比较大的类来说, 时间上的开销还是要考虑的. 所以这时常用返回const引用来代替返回副本.

    0 0
添加回答
相关问答

0

回答

大佬们,想问下跨集群reindex的时候,一直报错权限问题,但是账号密码也是对的,还能从哪方面去排查

2022-06-27 17:15:46 109浏览量 回答数 0

1

回答

Cluster-Operator的作用是什么?

2022-05-12 18:40:44 126浏览量 回答数 1

1

回答

Operator Metering的作用是什么?

2022-04-11 13:51:54 404浏览量 回答数 1

1

回答

云原生时代 RocketMQ所提及的“Kubernetes Operator”是什么意思?

2021-12-16 17:27:50 175浏览量 回答数 1

1

回答

python中operator. __mod__(a, b)方法的作用是什么?

2021-11-15 19:02:08 78浏览量 回答数 1

1

回答

python中operator. __truediv__(a, b)方法的作用是什么?

2021-11-15 21:06:01 146浏览量 回答数 1

1

回答

Python的operator. inv(obj)的作用是什么?

2021-11-06 11:43:45 87浏览量 回答数 1

1

回答

Python的operator. is_(a, b)的作用是什么?

2021-11-06 11:32:44 71浏览量 回答数 1

1

回答

Python的operator. sub(a, b)的作用是什么?

2021-11-06 11:52:44 127浏览量 回答数 1

1

回答

Python的operator. abs(obj)的作用是什么?

2021-11-06 11:37:39 76浏览量 回答数 1
+关注
0
文章
14879
问答
问答排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载