抱歉,如果问题非常基本。
方案 1:
#include <iostream>
using namespace std;
int max(int &a)
{
a +=100;
return a;
}
int main ( int argc, char ** argv)
{
int x=20;
int y;
y = max(x);
cout <<"x , y value is "<<x<<"and"<<y<<endl;
}
输出:
x,y 值为 120 和 120
方案 2:
#include <iostream>
using namespace std;
int & max(int &a)
{
a +=100;
return a;
}
int main ( int argc, char ** argv)
{
int x=20;
int y;
y = max(x);
cout <<"x , y value is "<<x<<"and"<<y<<endl;
}
输出:
x,y 值为 120 和 120
PROGRAM1 和 PROGRAM2 之间的唯一区别是第二个程序通过引用返回。究竟有什么区别?