刚刚接触C++时中的变量引用,就在想变量的引用是什么意思,为什么要使用这个功能,这个在编程中有什么优点呢?
1.引用的定义:变量的别名。
int &b=a; //声明b是一个整行变量的引用变量,初始化为a
b是a的引用,a,b作用相同,代表同意变量(a,b中所有东西都一样,包括a,b的地址)
其中注意和下面程序的区别:
int *p;
p = &a;
p变量存放的是a的地址,程序需要使用*p才能找到a中的值(p和a不是代表的同一变量,故p,a的地址也不同)
注:引用变量不是独立变量,系统不会为它分配内存单元。
举个例子:在水浒传中,都知道豹子头林冲,豹子头就是林冲的一个引用,大家提到豹子头就知道这个就是林冲,他们代表同一个人。
2.引用的作用,优势在哪
C++中增加引用功能,主要是利用它作为函数参数,以扩充函数传递数据的功能。
函数传递参数主要分为3种:
1.将变量名作为实参传输;
2.传递变量的指针;
3.传送变量的别名;
其中第1点,函数在执行时,是不会影响实参的数据;第2点,函数在执行时,通过数据指针来索引到变量,改变变量的值。
这两种方式可以称为传值方式调用。
第3点称为引用方式调用,直接传送变量的别名。这样可以在函数中改变实参的数据,这种方式比较直接,方便。使用指针方式传送就比较绕圈圈,而且繁琐。