码迷,mamicode.com
首页 > 编程语言 > 详细

C++ Prime:引用

时间:2015-03-08 15:26:22      阅读:195      评论:0      收藏:0      [点我收藏+]

标签:

  引用为对象起了另外一个名字,引用类型引用是另外一种类型。通常将声明符写成&d的形式来定义引用类型,其中d是声明的变量名:

int ival = 1024;
int &refval = ival;`// refval 指向ival(是ival的另外一个名字)
int &refval2;     // 错误,引用必须被初始化

  

  一般在初始化变量时,初始值会被拷贝到新建的对象中。然而定义引用时,程序把它的引用和初始值绑定在一次,而不是将初始值拷贝给引用,一旦初始化完成,引用将和它的初始值对象一直绑定在一起。无法令引用重新绑定到另外一个对象,因此引用必须初始化。

  引用并非对象,它只是为一个已经存在的对象所起的另外一个名字。

  定义了一个引用之后,对其进行的所有操作都是与之绑定的对象上进行的:

refval = 2;    // 把2赋给refval指向的对象,此处即是赋给了ival
int ii = refval;    // 与ii = ival执行的结果一样

  

  为引用赋值,实际上是把值赋给了与引用绑定的对象。获取引用的值,实际上是获取了与引用绑定的对象的值。同理,以引用作为初始值,实际上是以引用绑定的对象作为初始值:

int &refval3 = refval;    // refval3绑定到了那个与refval绑定的对象上,这里就是绑定到ival上
int i = refval;    // i被初始化为ival的值

  引用本身不是一个对象,不能定义引用的引用。

 

  所有引用的类型都要和与之绑定的对象严格匹配,而且引用只能绑定在对象上,而不能与字面值或者某个表达式的计算结果绑定在一起。

  

C++ Prime:引用

标签:

原文地址:http://www.cnblogs.com/vitah/p/4320748.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!