C++学习--引用

一、引用变量的三个特性:①引用和它引用的对象在数值上是联动的,改变你也就改变了我,改变我也就改变了你。

                          ②从一而终,引用在初始化是绑定某个对象后是不能改变的,如:

                             int v,k,h;     //定义三个int的变量
                  int &rv=v;   //定义了一个和v绑定的引用rv
                  rv=3;         //此时rv的值变为3,v的值也变为3 
                  v=5;          //此时v的值变为5,rv的值也变为5 
                    k=rv+2;     //此时k=5+2=7。 
                  h=12;        //此时h=12
                  rv=h;         //引用是从一而终的,所以这句话只相当于一个简单的赋值语句,rv=12, r=12
                  rv=20;       //rv=20, r=20

            ③引用在创建时必须初始化,如:int& rv; rv=r; 是错误的。

二、引用作为函数参数:作用和指针传递一样能改变原来参数的值,并且不需要把实参的一个拷贝传递给形参,节约的空间,引用传递具有更高的效率。

三、引用作为函数返回值:如果一个函数返回的是一个引用类型,那么该函数可以被当作左值使用。

        int i; 
             int& f1(int&); 
           int  f2(int); 
           f1(i)=3;    //这句话是正确的,相当于i=3
           f2(i)=4;    //这句话是错误的

                int& f1(int&i)
                {
                   return i;
                }
   
                int f2(int i)
                {
                   return i;
                }

 

 

posted @ 2013-05-19 18:02  mengmee  阅读(115)  评论(0编辑  收藏  举报