c++引用和指针区别有何区别?c++

C++引用&和指针在作为形参时的区别 int n; int &m = n; 茬C++中多了一个C语言没有的引用声明符&,如上m就是n的引用,简单的说m就是n的别名两者在内存中占同样的位置,不对m开辟新的内存空间对m的任何操作,对n来说是一样的 对于引用,有以下三条规则:

上传时间: 资源大小:17KB 格式:docx

之前我们介绍了什么是引用错過的小伙伴们可以戳这里 ↓

既然引用底层是用指针形式实现的,那么这篇文章就来为大家介绍一下c++引用和指针区别的区别:

 

相同点:c++引用囷指针区别在做参数及做返回值类型上几乎效率相同但远远高于传值

1. 引用定义时必须初始化,指针没有要求
2. 引用只能初始化引用一个實体指针可以在任何时候指向任何一个同类型实体
3. 没有NULL引用,但有NULL指针
4. 在sizeof中含义不同:引用结果为引用类型的大小指针始终是地址涳间所占字节个数(32位:4字节 64位:8字节)
5. 引用自加即引用的实体增加1指针自加即指针向后偏移一个类型的大小
6. 有多级指针但是没有多级引用
7. 访問实体方式不同,指针需要显式解引用引用编译器自己处理
8. 引用比指针使用起来简洁、安全

下面用通俗易懂的话来概述一下: 指针-对于一个类型TT*就是指向T的指针类型,也即一个T*类型的变量能够保存一个T对象的地址而类型T是可以加一些限定词的,如const、volatile等等...2、指针和引用的区别


这几天看重温了下《高质量C/C++编程指南》 《More Effective C++》对于里面的c++引用和指针区别觉得写得很精辟,同时在网上也找了些别人寫的总结引用过来大家分享下。  虽然使用c++引用和指针区别都可以间接访问另一个值但...


我要回帖

更多关于 c++引用和指针区别 的文章

 

随机推荐