c++的引用

来源:互联网 发布:淘宝改评价 编辑:程序博客网 时间:2024/06/15 05:31

对于函数:

void swapint(int *a,int *b)

  {
  int temp;
  temp=*a;
  *a=*b;
  *b=temp;

  }

使用引用机制后,以上程序的c++版本为:

  void swapint(int &a,int &b)
  {
  int temp;
  temp=a;
  a=b;
  b=temp;
  }

调用该函数的c++方法为:swapint(x,y); c++自动把x,y的地址作为参数传递给swapint函数。

一:如果一个函数返回了引用,那么该函数的调用也可以被赋值。

       这里有一函数,它拥有两个引用参数并返回一个双精度数的引用:
  double &max(double &d1,double &d2)
  {
  return d1>d2?d1:d2;
  }
  由于max()函数返回一个对双精度数的引用,那么我们就可以用max() 来对其中较大的双精度数加1:max(x,y)+=1.0

二:引用就是某一变量(目标)的一个别名,对引用的操作与对变量直接操作完全一样。引用的声明方法:类型标识符 &引用名=目标变量名;
  【例】:int a; int &ra=a; //定义引用ra,它是变量a的引用,即别名

三:(1)&在此不是求地址运算,而是起标识作用。
        (2)不能建立数组的引用。因为数组是一个由若干个元素所组成的集合,所以无法建立一个数组的别名。

0 0
原创粉丝点击