标签:存储空间 程序 另一个 参数传递 必须 使用 定义 数据对象 c++
参数传递方式:
(1)值传递(2)引用传递
(1)值传递:把实参值传递给形参,形参只是局部变量,函数运行完就会销毁,不会影响实参的值。
(2)引用传递:当定义引用变量时,例如:int &b=a,则a、b占用的是同一个存储空间,b相当于是a的别名,对a(或b)操作,另一个值也会改变;
目的:使用引用参数可以直接操作实参变量,从而实现通过改变形参的值达到修改对应实参值的目的; 设置多个引用参数,从函数中带回多个结果值。
使用引用参数的原因:1. 程序员能够修改调用函数中的数据对象 2. 通过传递引用而不是整个数据对象,可以提高程序的运行速度。当数据对象较大时(如结构和类对象),第二个原因最重要,这些也是使用指针参数的原因。
使用时机: 如果数据对象是结构,则使用引用或指针。 如果数据对象是类对象,则使用引用。
数组名作为参数:
数组名作实参,对应的形参为一个数组,一次传递整个数组;
数组作参数,其参数传递理解为形参数组与实参数组共用同一个数组空间。这里和引用传递很相似。函数定义形参的时候可以不指明数组的大小,函数调用的时候只能使用数组名,不能加[ ]。 例如声明: int func(int a[],int b){} ; 使用的过程: x=func(arr,n);
二位数组相同,但是声明的时候必须指明列数,行数可以省略。例如: void func(int a[][10],int b); 10不能省略!
结构体参数:
结构体参数作为参数,和值传递相同,即形参的改变不会影响实参成员的值。
标签:存储空间 程序 另一个 参数传递 必须 使用 定义 数据对象 c++
原文地址:https://www.cnblogs.com/hw5-zh/p/10517653.html