C++中 fun(int &n ) { n++}什么意思

#include <iostream.h>
void fun(int& n) { n++;}
void main()
{

for (int i=0;i<3;i++)
{
fun(i);
cout<<i<<endl;
}
}
请高手帮我解释一下程序

int& n 这句意思是按引用的方式传n进入函数fun, 这种情况下直接改变的是输入变量的值. 引用的内部实现其实也是指针, 但使用引用可以让使用的方式为普通方式,但是可以达到指针的效果.
具体技术细节baidu一下就有了.追问

还是不懂那程序到底什么意思

追答

fun(i) 由于是用引用的方式传递, 会修改i的值. 所以循环里面调用fun(i) 也会导致i的值加1, 循环自己的i++也会导致i的值加1 , 这样就将导致i 从1 开始循环,调用fun(i) 后i 的值变成1,cout输出1. 然后下一个循环,调用i ++, i值变成2, 再调用fun(i), i值变成3, cout输出3. 然后判断i< 3就不成立导致退出循环了.

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-03-14
-_-b追问

不要这个表情嘛 俺们才刚接触C++ 没办法

追答

定义一个函数,参数类型为int引用。

相似回答