龙空技术网

C++引用之给已有的变量取个别名

千锋IT小助手 112

前言:

目前各位老铁们对“c语言中的合法变量名有哪些”大约比较讲究,你们都需要知道一些“c语言中的合法变量名有哪些”的相关内容。那么小编也在网摘上收集了一些对于“c语言中的合法变量名有哪些””的相关知识,希望同学们能喜欢,姐妹们快快来学习一下吧!

1、引用的概述

引用是c++对c的重要扩充。在c/c++中指针的作用基本都是一样的,但是c++增加了另外一种给函数传递地址的途径,这就是按引用传递(pass-by-reference),它也存在于其他一些编程语言中,并不是c++的发明。

变量名实质上是一段连续内存空间的别名,是一个标号(门牌号) 程序中通过变量来申请并命名内存空间 通过变量的名字可以使用存储空间

对一段连续的内存空间只能取一个别名吗? c++中新增了引用的概念,引用可以作为一个已定义变量的别名。 基本语法: Type& ref = val; 注意事项: &在此不是求地址运算,而是起标识作用。 类型标识符是指目标变量的类型 必须在声明引用变量时进行初始化。 引用初始化之后不能改变。 不能有NULL引用。必须确保引用是和一块合法的存储单元关联。 可以建立对数组的引用。

    int num = 10;    int &a = num;//此处 &不是取地址 而是标明 a是引用变量(a 是 num的别名)

2、引用的注意事项

2.1、引用必须初始化

2.2、引用一旦初始化 就不用再次修改别名

    int num = 10;    int &a = num;     int data = 20;    a = data;//不是data别名为a  而是将data值赋值a(num)

案例:

    int num = 10;    int &a = num;//a就是num的别名  a==num     cout<<"num = "<<num<<endl;//10    //对a赋值 == 对num赋值    a=100;    cout<<"num = "<<num<<endl;//100     //a是num的别名 所以num和a具有相同的地址空间    cout<<"a 的地址:"<<&a<<endl;    cout<<"num 的地址:"<<&num<<endl;

运行结果:

由于num仅仅是a的别名所有 a和num代表同一块空间地址,所以地址一样。

标签: #c语言中的合法变量名有哪些 #在c语言中合法的变量名