您的位置:首页 > 编程语言 > C语言/C++

【C/C++】指针与引用的区别

2016-09-09 19:59 363 查看
引用是C++对C语言的扩展,引用可以理解为变量的一个别名,所谓别名就是人还是同一个人,只是多了一个名字而已,对变量也是如此。

如:

int a = 10;
int &b = a;这里b就是变量a的一个别名,他们代表的内存地址是完全相同的,注意这里b不是指针,c++没有规定引用的底层实现,所以编译器实现引用时,可以为引用分配空间,也可以不分配空间。

引用与应用的主要区别有以下三点:

1.在任何情况下都不能使用指向空值的引用。也就是所存在空指针,但不存在空引用,一个引用必须总是指向某个对象的,这个对象是一开始就必须指定了的。

2.引用由于不存在空引用,所以使用引用之前不需要测试它的合法性,而指针则应该总被测试,防止其为空。

3.指针可以被重新赋值以指向另一个不用的对象,而引用则总是指向在初始化时被指定的对象,以后不能改变(指定的对象的内容可以改变)。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  CC++ 引用与指针