C++重点之“引用变量”用法

学习目标:

掌握引用变量的用法及其本质


学习内容:

1.引用的概念

引用是已定义的变量的别名(另一个名称),两者用法完全一样。同类理解  typedef 是给类型起别名。

2.声明与定义

一、基本数据变量的引用

定义时就要初始化 ,不能再指向其他  ,  引用变量的地址相同

//一个变量可多个引用
int a=12;
int &b=a;
int &c=b;
int &d=b;
//不能在指向其他   eg:
int x=10;
int y=20;
int &a=x;
int &a=y;

二、常量的引用

const int &a=10;
const char &c='x';
const float &f=12.123;

三、复合数据类型的引用

数组的引用 

//一维数组的引用
int arr[5];
int(&k)k[5]=arr;
//二维数组的引用
int arr1[3][4];
int(&a)[3][4]=arr1;

结构体的引用  类型&引用名=结构体实例;

指针的引用:

int *p=NULL;
int* &a=p;

3.引用与函数

引用做函数参数值:

void fun1(int &x)
{
    x=10;
    cout<<x<<endl;
}
int main()
{
    
    int a=20;
    fun1(a);
    cout<<a<<endll
    return 0;
}                //输出 x=10;a=10;

void fun2(int x)
{
    x=10;
    cout<<x<<endl;
}
int main()
{
    int a=20;
    fun2(a);
    cout<<a<<endl;
    return 0;
}            //输出 x=10;a=20;

4.引用与指针的区别

一、引用声明时就要初始化,指针不用  eg :int *p=NULL;

二、引用不能指向其他变量(int &a=b,int &a=c),指针可以任意指向

三、引用不占用空间,指针会占用空间

四、引用效率更高

五、引用更加安全,指针可以偏移

六、指针更加灵活,直接操作地址,指针 c/c++都适用 , 引用只适用于c++

5.&的三种作用

声明变量时有& 表示引用,eg:int & a=b;

变量前直接加& 表示取地址变量,eg : int *p=&a;

数&数,表示位与运算;

  • 5
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值