下列程序编译错误,因为add函数返回值是一个引用,故对return后返回值的要求是【 】。 #include<iostream. h> int& add(int x, int y) {

admin2010-06-06  32

问题 下列程序编译错误,因为add函数返回值是一个引用,故对return后返回值的要求是【 】。
           #include<iostream. h>
           int& add(int x, int y)
           {
                return x+y;
           }
           void main( )
                int i=3,j=19;
                cout<<(add(i,j)+ =20)<<end1;
           }

选项

答案不能是表达式

解析 引用是变量的别名,其实质是变量的地址。return在返回值时,如果其后为表达式,则系统为该表达式生成一个临时变量用于存放该表达式的结果,函数执行完毕之后该变量被系统回收,因此,返回的该变量的地址对调用函数来说已经没有意义了。
转载请注明原文地址:https://jikaoti.com/ti/tRW0FFFM
0

最新回复(0)