4 回答
TA贡献1757条经验 获得超8个赞
1 2 3 4 5 6 7 8 9 10 | Complex& Complex::operator++() // 返回一个引用即代表当前对象本身 { ++real; return *this; // 返回当前对象(立即可体现出来前置++的值) }
Complex Complex::operator++(int) { return Complex(real++, image); // 这里只是返回一个对象的副本。不能体现real++后的值(因为是后置++),所以后置++只能先取值。然后再++ } |
TA贡献1862条经验 获得超6个赞
这里返回对象的引用, 可以连续使用。
举个例子 cout<<是我们经常用的吧
其实是重载了<<这个操作符。
如果不返回引用
cout<<a<<b<<endl; 就不可以一起写了。
如果返回自身的引用 cout<<a之后,返回身身的引用,后面可以继续接b了。
就是这个意思吧。好多重载操作符,作用其实都是这样的。
还有 "="的重载
返回引用的目的 显然就是 方便写成 a = b = c;
为什么可以这样 其实是a = (b = c);
b=c返回的是b的引用,然后再继续 a = b ;如果不反回自身的引用,显然就不行了!
TA贡献1845条经验 获得超8个赞
1、因为重载自加运算符后可以返回对象的引用, 以方便在表达式中连续使用。
举个例:
cout<<是经常用的,其实是重载了<<这个操作符。如果不返回引用,cout<<a<<b<<endl; 就不可以一起写了。如果返回自身的引用 cout<<a之后,返回身身的引用,后面可以继续接b了。就是这个意思吧。好多重载操作符,作用其实都是这样的。
2、引用是C++引入的新语言特性,是C++常用的一个重要内容之一,正确、灵活地使用引用,可以使程序简洁、高效。引用就是某一变量(目标)的一个别名,对引用的操作与对变量直接操作完全一样。 引用的声明方法:类型标识符 &引用名=目标变量名。
TA贡献1921条经验 获得超9个赞
& 代表引用,形参是引用(非const型)时,就是将该对象自己传递进函数了返回值是&时用在运算符的返回值是左值时,常用有这几个:所有的赋值(包括复合赋值),前缀自加自减,下标运算符
- 4 回答
- 0 关注
- 1489 浏览
添加回答
举报