操作符重载:什么时候返回引用

原创 2015年07月10日 20:31:50

返回一个已经存在的对象或者变量时最好返回一个引用(可以避免返回值做左值时的一些麻烦,以及不用生成匿名变量,可以节约资源,提高效率。),如:

Complex & operator++(Complex & c)
{
                 c .a ++;
                 c .b ++;
                 return c ;
}

返回一个临时变量时,那么不要返回引用(否则容易出现很多问题),如:

Complex operator++(Complex & c, int )
{
                 Complex tmp = c ;
                 c .a ++;
                 c .b ++;
                 return tmp ;
}
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

一段代码引发的思考-----(类及操作符重载,数组相加)

平时照着书上敲代码,没有发现什么错误,最多是自己失误把字母敲错了,可是轮到自己写代码时,出现了一大堆错误,错误五花八门,但是主要还是对知识概念不熟造成的,学习编程语言的时候还是要多做练习,光敲书上的例...

CPP(三)理解操作符重载:初步

在C++中我们将操作符也看做函数。例如,重载操作符 + 时

CPP(四)理解操作符重载:进阶

操作符重载函数的格式是怎么的呢?

C++运算符重载(3) - 什么时候需要自定义赋值操作符

答案与拷贝构造函数一样。如果一个类不包含指针,则不需要自定义赋值操作符与拷贝构造函数。编译器会给每个类创建一个默认的拷贝构造函数和默认的赋值操作符。但是,当类中包含有指针或任何运行时分配的资源时,编译...

返回一个临时变量的右值引用,那么临时对象什么时候释放?

最近在研究右值引用的时候碰到这个问题,还没有解决,将问题贴在这里,待更新: const int* printAddress(const int & v) { cout << v << endl...

C++面向对象操作符重载:调用操作符和函数对象

1、定义了调用操作符的类,其对象常称为函数对象,即它们是行为类似函数的对象。      可以为类类型的对象重载函数调用操作符。一般为表示操作的类重载调用操作符。函数调用操作符必须声明为成员函数。一个...

好久没有写操作符重载了 自己重新写了个 温习了一下细节 温习友元 this const 引用

#include using namespace std; class Point { public: Point(int _x, int _y) : x(_x), y(_y) ...

recv什么时候返回

原文 : http://blog.csdn.net/zlzlei/article/details/7689409 以前老在网上找别人说recv什么时候返回,要么说的很笼统,要么完全觉得不靠谱,最近还...

什么时候用引用

1. 什么是“引用”?申明和使用“引用”要注意哪些问题? 引用就是某个目标变量的“别名”(alias),对应用的操作与对变量直接操作效果完全相同。 申明一个引用的时候,切记要对其进行...

C++:C++方法(函数)传参,传值,传址,传引用的之间的区别,什么时候用那个好一点

C++中函数传参: 1).按值传递(pass by value) value 2).地址传递(pass by pointer) *value 3).引用传递(pass by ref...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)