一、值传递
形参和实参是存放在两个不同的内存单元中。
二、指针传递(地址传递)
1.当进行指针传递时,形参是指针变量,实参是一个变量的地址或是指针变量,调用函数时,形参指向实参的地址。因此形参指针的值与实参变量的值应该相等。即把实参的地址传递给形参,通过形参指针可以更改实参指向的内存空间的值。
2.在指针传递中,函数体内可以通过形参指针改变实参地址空间的内容。
三、传递引用
1.引用实际上就是某一变量的别名,和这个变量具有相同的内存空间。
2.实参把变量传递给形参引用,相当于形参是实参变量的别名,对形参的修改都是直接修改。
3.在类的成员函数中经常用到类的引用对象作为形参,以提高代码效率。
//引用传递 void Fun(int &a){ cout<<"形参引用a的地址 = "<<&a<<endl; a = 100; //对形参引用进行修改 } int main(){ int a = 10; cout<<"实参a的地址 = "<<&a<<endl; cout<<"实参a的值 = "<<a<<endl; Fun(a); cout<<"实参a的值 = "<<a<<endl; getchar(); return 0; } 输出结果:
新闻热点
疑难解答
图片精选