码迷,mamicode.com
首页 > 编程语言 > 详细

C++引用的使用

时间:2020-04-23 20:54:26      阅读:56      评论:0      收藏:0      [点我收藏+]

标签:修改   实参   amp   ++i   调用   turn   return   注意   end   

例题 1

int f(int i)

{

  return ++i;

}

int g(int &i)

{

return ++i;

}

void main()

{

  int a,b;      

a=b=0;

a+=f(g(a));    这里一个是引用 一个是普通的调用 先执行g(a) g(0)-> 1 同时修改了a的值=1 f(1)->2 a+=2 a=a+2 注意此时的a已经变为了1 所以最后得到 a = 3

b+=f(f(b));    这里是普通的函数,只改了形参,不影响实参,f(b)=1 但是此时的a还是0,f(1) = 2 a+=2  a=a+2 此时的a=0 所以得到的 a=2

cout<<"a="<<a<<" b="<<b<<endl;

}

例题2

int &max(int &x,int &y)

{

   return (x>y?x:y);

}

void main()

{

   int n=2,m=10;

   max(n,m)--;  这里执行后到结果是 10 但是-- 后返回的是实参y 也就是 m = 10-- = 9

   cout<<”n=”<<n<<”,m=”<<m<<endl;     //得到的结果是 n=2,m=9

}

 

C++引用的使用

标签:修改   实参   amp   ++i   调用   turn   return   注意   end   

原文地址:https://www.cnblogs.com/xiaozoui11cl/p/12763286.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!