ylww

随笔仅作学习记录,请辩证参考!!!

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

引用的概念

a) 在C++中新增了引用的概念

b) 引用可以看作一个已定义变量的别名,不能直接定义没有指向的别名  

c) 引用的语法: Type &name = var;

d) 引用做函数参数(引用作为函数参数声明时不进行初始化,否则如 b)所说。)

 

引用的意义

1.引用作为其他变量的别名而存在,因此在一些场合可以代替指针

2.引用相对于指针来说具有更好的可读性和实用性。

 

引用的本质

1.对于同一内存空间可以取好几个别名

2.引用有自己的空间

3.引用作为某一变量别名后不能更改它作为其他变量的别名,但能改变当前变量的值。

结论:引用很像 常指针。int &b = a;=>int * const b = &a;   实际上c++明修栈道,暗度陈仓。

引用就是通过int * const b = &a;在底层实现的。因此引用所占用的空间大小与指针相同。

 

引用的结论

1.当实参传给形参引用的时候,只不过是C++编译器帮我们程序员手工取了一个实参地址,传给了

形参引用(常量指针)

2.当我们使用引用语法时,不去考虑编译器如何做的。当出现奇怪语法现象的时候,我们再去考虑。

 

指针的引用

 

 指针引用的好处:(之前说过,二级指针不但可以将变量通过参数传到函数内部,也可以将函数内部变量

“带出”到函数外部。代码如下:)

 使用引用时:

  

 

常引用

 

const int &a = 10;不如 const int a =10;这样定义。但c++语法支持。

 

关于const

 

posted on 2022-05-29 16:39  理想主义者光芒万丈  阅读(73)  评论(0)    收藏  举报