c/c++ 指针与引用的区别与联系

引用就是变量的另一个名字:  引用必须初始化,无空引用,无等级.

int a = 10;

int &b = a;  <=>  int* const b = &a;  两句等价 , const后跟b说明b的值(a的地址)不能改变, 而a指向的值可以改变,

引用与指针在编译时的方法一样,都是指向变量的地址.

不同点:

1.在定义时: 引用存储的是值,而指针时一个变量的拷贝,存储的是地址.

2.引用只能对已经存在的变量或者是对象实现引用,而指针不需要,可以为空

3.函数传参中,如果传的是引用,意味着这个变量或者对象已经存在,

如果传递的是一个指针,则不能判断该指针是否有效,是不是为空, 所以引用比较安全,但是指针效率更快一点.

4.引用时直接访问变量,不分配自己的内容空间, 指针是间接访问,需要自己的内存空间.

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容