C++中引用与指针的区别
来源:互联网 发布:sql界面添加字段默认值 编辑:程序博客网 时间:2024/06/15 06:16
一. 引用与指针的相同点
1.都是指向一个变量的内存地址,底层实现都相同。
int x = 6;00BE13D8 mov dword ptr [x],6 int *y = &x;00BE13DF lea eax,[x] 00BE13E2 mov dword ptr [y],eax int x = 6;00FE13D8 mov dword ptr [x],6 int &y = x;00FE13DF lea eax,[x] 00FE13E2 mov dword ptr [y],eax
2.一个const指针可以指向一个const变量;一个const引用可以引用一个const变量。
int x = 6;const int *y = &x;int x = 6;const int &y=x;
3.一个const指针可以指向一个非const修饰的变量;一个const引用也可以引用一个非const修饰的变量。
const int x = 6;const int *y = &x;const int x = 6;const int &y = x;
二. 引用与指针的不同点
1.引用一旦定义就不能在进行修改,而指针还可以修改。
int a = 6;int b = 8;int &ra = a;//此时ra=6int *pa=a; //此时pa=6ra=b; //ra依然引用a,但a的值变为8pa=b; //pa指向b,a的值没改变
2.指针有多级指针,而引用没有。
int **p=a;int &&p=a; //没有这种写法
3.引用自加改变变量的内容,指针自加改变了指针指向。
4.在sizeof中含义不同:引用结果为引用类型的大小,但指针始终是地址空间所占字节个数。
5.一旦一个引用被初始化为指向一个对象,就不能再指向其他对象,而指针可以在任何时候指向任何一个同类型对象。
6.引用使用起来比指针更安全。
7.引用在定义时只能对已经存在的变量或对象进行引用,而指针不用可以定义为NULL。
阅读全文
1 0
- C中指针与引用的区别
- c中指针与引用的区别
- C、C++中引用与指针的区别
- C、C++中引用与指针的区别
- 【C/C++】指针与引用的区别
- 指针与引用的区别 (MoreEffictive C++)
- C/C++ 指针与引用的区别
- 【C++】指针与引用的区别
- 引用 与 指针的区别 -- C
- C语言---指针与引用的区别
- C/C++ 指针与引用的区别
- C++中指针与引用的区别?
- C++中引用与指针的区别
- c++中引用与指针的区别
- c++中指针与引用的区别
- C++中引用与指针的区别
- C++中引用与指针的区别
- C++中引用与指针的区别
- 添加库文件
- Mac osX环境下使用docker
- 算法笔记 PAT B1001 (3n+1猜想)
- 008_ServletResponse
- 2017-我的秋招之路:机器学习/算法工程师(含大量面经)
- C++中引用与指针的区别
- 009_GenericServlet
- Kali 2.0使用SSH进行远程登录不上的问题
- Struts2_013_ActionSupport
- python---函数()
- 常见排序算法(总结)
- codeforces 883C Downloading B++ 枚举,贪心
- 栈 基本用法 配合字母交换
- 20171105