您的位置:首页 > 编程语言 > C语言/C++

C++引用

2012-12-24 20:24 113 查看
1. 引用是别名

在c++中引用(reference)就是对象的另一个名字。引用必须用于该引用同类型的对象初始化。例如:

int ival =1024;
int &refVal = ival; //OK
int &refVal2;    //错误,引用类型必须初始化
int &refVal3 = 10;    //错误:必须用对象初始化

注解:引用初始化后,就保持绑定到初始化时指定的对象上。不可能将引用绑定到另一个对象。理解引用只是对象的另一个名字。

2. const 引用

const 引用是指向const 对象的引用。
const int ival = 2;
const int &refVal = ival;  //正确
int &ref2 = ival;  //错误:非const引用指向const兑现
const 引用可以初始化为不同类型的对象那个或初始化为右值。例:
//const 引用初始化为右值,……
int val = 0;
const int constVal = 9;
const int &refVal=constVal;
const int &ref2 = 9+val;
//const 引用绑定到不同类型对象
double dval =2.14;
const int &ref3 = dval;

实际上编译器会将上述代码装换为如下形式的编码:

int temp = dval;
const int &ref3 = temp;   //临时对象

注解:非const对象只能绑定到与该引用同类型的对象。const引用则可以绑定到不同但相关类型的对象或右值。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: