引用(reference)相当于为对象起了另一个名字。该类型引用另外一种类型。引用标识符以"&"开头。
1 int val = 180; 2 int &reference = val; //refVal指向ival 3 int &mistake; //错误:引用必须被初始化
通过上面的例子,可以看到一般在初始化变量时,初始值会被拷贝到新建的对象中。而定义引用时,程序则是把引用和它的初始值绑定在一起。一旦引用的初始化完成,绑定关系将一直存在,因此,引用必须初始化。
注意,引用即别名,它并不是一个对象。
1 int i = 10; 2 int &refi = i; 3 refi = 1; //即将1赋给了i 4 int a = refi; //相当于使a = i
引用的初始值必须是一个对象,且引用的类型必须与其对象严格一致,所以:
1 int &ref = 0; //错误 2 double a = 1.12; 3 int &refa = a; //错误
时间: 2024-10-25 12:08:24