faint路漫漫 发表于 2008-4-21 21:35

解释下

#include<iostream.h>
const int &kk(int a,int b){
        return a>b?a:b;
}
void main(){
const int &x=kk(1,2);
cout<<x<<endl;
}
为什么在x加&输出结果不正确,不加则正确。kk函数中返回的是一个局部变量的引用吗??那kk调用后局部变量消失 引用不就无效了吗??


页: [1]

编程论坛