引用和指针的区别

引用和指针都是复合类型,主要区别:

  引用:本身并非对象,只是一个别名,定义时必须初始化对象,一旦定义则无法绑定其他对象;不能定义指向引用的指针。

  指针:本身也是一个对象,定义时可以不用初始化(当然不推荐这样做),再次赋值时指针指针指向新的对象;可以定义指向指针的引用。

如:

int *p;
int *&r = p; //r是指针p的一个引用
int a = 66;

r = &a; //让p指向a
*r = 666 ; //解引r得到p指向的对象,改变a的值为666
 

 

posted on 2016-01-07 15:50  -Vi  阅读(206)  评论(0编辑  收藏  举报

导航