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

C++学习之路-参数传递

时间:2019-03-12 16:42:22      阅读:190      评论:0      收藏:0      [点我收藏+]

标签:存储空间   程序   另一个   参数传递   必须   使用   定义   数据对象   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++学习之路-参数传递

标签:存储空间   程序   另一个   参数传递   必须   使用   定义   数据对象   c++   

原文地址:https://www.cnblogs.com/hw5-zh/p/10517653.html

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