什么时候函数适合使用引用参数

使用引用参数主要有两个重要原因:
1、可以修改调用函数中的数据对象,即函数实参
2、通过传递引用而不是复制传递整个数据对象,可以节省程序内存和运行时间

当数据对象比较大,比如结构体、类的对象等,第二个原因最为重要。这也是使用指针的原因之一,实际上,引用也是基于指针的代码的另一个接口。
那么指针、引用、值传递分别适合在什么场合使用呢?

如果对参数传递的值不做修改(const)

  1. 如果数据对象很小,如int等内置类型,使用值传递
  2. 如果数据对象是数组,使用指针,并且这是唯一的选择,更进一步,将指针声明为指向const的指针
  3. 如果数据对象是比较大的结构,则使用const指针或者const引用,提高程序的运行效率,节省程序复制结构所需的时间空间
  4. 如果数据对象是类对象,使用const引用,类设计的语义常常要求使用引用,传递类对象参数的标准方式是引用传递。

如果修改调用函数中的实参对象

  1. 如果数据对象是内置数据类型,则使用指针。调用时需要传入变量的地址,如sum(&a,&b);
  2. 如果数据对象是数组,则只能使用指针
  3. 如果数据对象是结构,则使用引用或指针
  4. 如果数据对象是类对象,则使用引用
已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 自定义皮肤 设计师:戎码关山 返回首页