关于形参和实参

来源:互联网 发布:冰川远征网络幽冥 编辑:程序博客网 时间:2024/06/05 19:06

形参:在定义函数和函数体的时候定义的参数,用来接收调用函数时传入的参数值。(虚拟变量,并未占用存储空间)

实参:调用函数时设置的参数。(为变量,已占用存储空间)

下面介绍参数传递方式

1、值传递

Model:

find(int x){}    //定义函数
y= find(z);        //调用函数

z是实参,x是形参。

调用函数之后,x=z,z 本身的值也没发生变化。

****** 在值传递过程中,实参和形参位于内存中两个不同地址中,实参先自己复制一次拷贝,再拷贝复制给形参。

            所以,在值传递过程中,形参的变化不会对实参有任何的影响。

2、地址传递(也称引用传递)

实参是指针。
在函数调用的时候,实参传递给你的是指针地址,地址一样也就意味着实参和形参是一样的,当你的形参发生改变时,实参也会发生改变。

Model:

find(int  &x){}
y= find(z);

z是实参,x是形参。z随x而改变。


3、const引用传递

Model:

find(const int  x){}

y= find(z);


z是实参,x是形参。z不随x而改变。

*****只要对象的声明中带有const标识, 任何有修改其值风险的行为编译器都会提醒你。

*****const是防止误修改函数参数的值。

                                                                                                                                        ws_lo_wmh_ve

        2016.11.02

0 0
原创粉丝点击