C++ 引用
时间:2010-10-22 来源:aaron_xueli
C ++ 引用
-
引用概念
对变量起另外一个名字(外号), 这个名字称为该变量的引用。如:
int max;
int &refmax = max;
refmax并没有重新在内存中开辟单元,只是引用max的单元。max与refmax在内存中战胜同一地址,即同一地址两个名字。
#include <iostream> |
对引用类型的变量,说明以下几点:
1、引用在定义的时候要初始化。
2、对引用的操作就是对被引用的变量的操作。
3、引用类型变量的初始化不能是一个常数。如:int &ref1 = 5; //是错误的。
4、引用同变量一样有地址,可以对其地址进行操作,即将其地址赋给一指针。
5、可以用动态分配的内存来初始化一个引用变量。
指针与引用的区别:
1、 指针是通过地址间接访问某个变量,而引用是通过别名直接访问某个变量。
2、 引用必须初始化,而一旦被初始化后不得再作为其他变量的别名。
当&的前面有类型符时(如int &a),它必然是对引用的声明;如果前面无类型符(如cout << &a),则是取变量的地址。
2. 引用的用途
引用的用途主要是用来作函数的参数或函数的返回值。引用作函数的形参,实际上是在被调函数中对实参变量进行操作。
#include <iostream> |
引用作为形参,实参是变量而不是地址,这与指针变量作形参不一样。
#include <iostream> |
#include <iostream> |
函数的返回值为引用类型
可以把函数定义为引用类型,这时函数的返回值即为某一变量,所以可对其返回值进行赋值操作。这一点类同于函数的返回值为指针类型。
#include <iostream> |
结果:
9
25
60