引用就是对某一变量起了一个新别名,对引用的操作就是对其变量的操作;

int &a=b;//定义引用a,它是变量b的引用名即既是别名

1,引用方法  类型标识符(变量的类型)+&+引用名=目标变量名;

2,声明引用时必须对其初始化

3,声明一个引用并不是新定义一个变量,它只是一个引用名仅仅是变量的一个别名(一个引用名仅仅做为一个变量的引用),它不是一个数据类型,so它本身不占内存,系统也不给他分派内存空间

4,对引用求地址就是对变量求地址(&a=&b)

5,Because一个引用名仅仅是对一个变量的引用,同时数组是多个元素组成的集合,so无法建立一个数组的引用名

引用的应用

1,引用作为参数

void swap( &a,&b){

      int temp;

         temp=a;

         a=b;

         b=temp;}

main(){

int b,c;

cin>>b>>c;

swap(b,c);

cout <<b<<c;}

上述程序输入10,20则输出结果为20,10;

对被调函数的形参的操作就是主函数中目标对象参数的操作(和指针传递是等价的)

2,类型兼容原则的应用(需要基类对象的任何时候都可以用公有派生类的派生类对象来替代)

派生类对象可以初始化基类的引用

class A;

class B :: public A{....};

B  m;

A   &temp=m;//用派生类的对象初始化基类的引用

temp只能访问派生类对象从基类继承下的成员

            

更多推荐

c语言引用详解