引用和指针在c++之中的具体区别

求个例子说明引用和指针如何不一样,还有空间内存的问题以及操作的效率高低

引用和指针在c++之中的具体区别 只是在语法上。
原因是指针只是c++为了兼容C语言。
引用的原理就是指针。指针难以控制,会危害内存的分布,内存泄漏。
在效率上指针比引用高,引用就是为了规避

打个比方,指针就像指示器,指向了一个变量的位置,所以可以指来指去,想指哪里指哪里。

引用 就像一个外号,给一个变量起了一个外号,这个变量就起个胖子的外号,只要喊胖子,就是这个变量。

int a = 10; // 定义一个变量
int *p = NULL; //定义一个指针
p = &a; //将指针指向变量a的地址
int &fat = a; // 给a起了一个外号 fat

其实只是换个写法,引用的实现的原理实际就是指针。

http://www.cnblogs.com/tracylee/archive/2012/12/04/2801519.html

引用和区别

引用比指针会更安全。比如定义一个引用变量和一个指针变量:
引用变量必须要这样:
int b = 1;
int &a = b;
引用必须要指向一个已经存在的变量。
而定义指针的时候:
```int *a;

a可以直接定义,没有规定一定要初始化,所以可能出现:
``` int *a;*a = 1;

也就是野指针的情况,造成内存泄露。
所以指针定义之后一定要初始化一下,一般都是初始化为NULL空指针,在访问指针的时候也应该判断它是否是空指针,这样代码鲁棒性也就会更强啦

穿了西装的张三 小名叫 小三

引用就是小三
指针就是穿了休闲装的张三。

http://www.cnblogs.com/dolphin0520/archive/2011/04/03/2004869.html