C++引用变量

引用变量一般需要在定义的时候初始化,函数参数和成员变量可以无需初始化,本地变量和全局比变量需要初始化。

引用变量为赋值变量的别名。

引用变量的赋值必须为一个有名字的变量。

返回值类型为引用变量的函数,返回值不可以为本地变量,因为函数结束后,本地变量的内存会被释放,返回值无意义,error。可以返回全局变量

引用(reference):cant be null,必须依附于某一变量,一旦初始化后,依赖的变量对象便固定。

指针(pointer):can be null,对立的,可以更改

指针变量赋初值,初值不为变量为常值,常值在系统中不像变量一样占用额外的内存,为代码段的一部分,系统会将常值在代码段中的地址传给指针,然而代码段不可以修改,当使用指针变量对常值进行修改,会报bus error。

reference:底层为变量指针

C 指针函数

距离变量名最近的决定变量的基本类型

int &* p       //illegal     不可以取引用变量的地址

int *& p         //ok    int指针类型变量的引用

距离p最近的为*,p为指针;距离p最近的为&,p为引用

reference不是一个实体。无reference类型的数组

java中的引用本质是指针(不可参与计算,无星号)

当类的成员变量为引用时,无法在声明的时候与其他变量进行绑定,必须在构造函数中,使用Initialize list将该变量进行赋值(绑定)

函数的返回值类型可以是reference或者pointer,但是不可以返回函数的local variable!可以是全局变量。return的变量将会与符号&或符号*结合,与其他reference或 pointer进行绑定。

如果函数的返回值类型是reference,那么该函数的返回值即为其return的变量的别名(引用),可以直接使用函数的结果做赋值或被赋值。

通常使用const reference作为函数的参数,以避免在函数中对参数的值进行修改。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值