C++中引用&与取地址&的区别
来源:互联网 发布:网店优化推广 编辑:程序博客网 时间:2024/05/16 00:42
简单来说,一个是用来传值的 一个是用来获取首地址的
&(引用)==>出现在变量声明语句中位于变量左边时,表示声明的是引用.
例如: int &rf; // 声明一个int型的引用rf.
&(取地址运算符)==>在给变量赋初值时出现在等号右边,或在执行语句中作为一元运算符出现时,表示取对象的地址.
在C++中,既有引用又有取地址,好多人对引用和取地址不是很清楚,因此也无法区分。其实他们的区别可以用一句话概括:和类型在一起的是引用,和变量在一起的是取址。
下面我们通过实例具体了解一下:
1)引用在赋值=的左边,而取地址在赋值的右边,比如
int a=3;
int&b=a; //引用
int*p=&a; //取地址
最后一句我的理解是,考虑*和&的优先级要高于=,so相当于:
(1)int* p; //先定义int指针,从而p中存了个int数值的地址
(2)p=&a; //对p赋值,p中存的地址赋值为a的地址
2)和类型在一起的是引用,和变量在一起的是取址。 举例同样如上,还有下例:
int function(int&i)
{
}//引用
3)对于vector,上面2条同样适合
vector< span>int< vec1(10,1); //initialize vec1: 10 elements, every element's value is 1
vector< span>int<&vec2 = vec1; // vec2 is reference to vec1
vector< span>int<*vec3 =&vec2;//vec3 is addresss of vec1 and vec2
- C中引用'&'与取地址'&'的区别
- C++中 引用&与取地址&的区别
- C++中引用&与取地址&的区别
- C++中 引用&与取地址&的区别
- C++中 引用&与取地址&的区别
- C++中引用&与取地址&的区别
- C++中 引用&与取地址&的区别
- C++中 引用&与取地址&的区别
- C++中 引用&与取地址&的区别
- C++中 引用&与取地址&的区别
- C++中 引用&与取地址&的区别
- C++中 引用&与取地址&的区别
- C++中 引用&与取地址&的区别
- C++中 引用&与取地址&的区别
- C++中引用&与取地址&的区别分析
- 详解C++中指针(*)、取地址(&)、解引用(*)与引用(&)的区别 (完整代码)
- 详解C++中指针(*)、取地址(&)、解引用(*)与引用(&)的区别 (完整代码)
- 详解C++中指针(*)、取地址(&)、解引用(*)与引用(&)的区别
- 女方妈妈和男方爸爸这样告诉即将结婚的儿女
- Android中使用ListView显示列表之SimpleAdapter的使用
- 关于struts一些知识点
- Mandelbrot命令行实现
- MyEclipse快捷键设置
- C++中引用&与取地址&的区别
- 2013年4月_武科大程序设计大赛_解题报告(problem 1006)
- 最简单的shadow volume
- 专题3-5.#pragma预处理分析(国嵌C语言视频)
- Ubuntu 12.04安装完全指南
- Ubuntu 12.04 系统配置指南
- 再进一步分析struts2拦截action的机制流程及原理
- 每个开发者都必须知道的 14 个数字
- DirectX 3D_基础之镜面效果 阴影 阴影矩阵 防止二次融合 网格 子集和属性缓存 绘制子集 网格优化 属性表 邻接信息 克隆 创建网格