C++ 引用 概念

C++ 引用 概念

引用即对另一个变量的映射,或者说是另一个变量的别名,用引用名称和变量名称都可以访问变量内容

定义

int num = 10;
int &r = num;   // 创建了引用r

printf("%d\n", num);    // 10
printf("%d\n", r);      // 10

与指针的不同

  • 引用在声明时必须初始化,这点有点像常量,指针可以声明之后再被赋值
  • 引用不能更换被引用对象,从创建开始就只能引用一个变量,而指针可以更换指向对象
  • 不存在空引用,其必须引用一个合法的内存地址,而指针可以是空指针

常量引用

通常情况引用只能引用和自身类型相同的值

int num = 10;
int &a = num;   // 引用a只能引用int型的对象

但由const修饰的引用不同,其可以引用和自身不同类型的引用(前提是,系统能够转换过来的类型),甚至可以引用一个字面量

int &a = 120;   // 错误
const int &a = 120; // 正确

猜你喜欢

转载自www.cnblogs.com/esrevinud/p/11909313.html
今日推荐